Hello,

I tried compiling the CryptoPP library from CVS under the new Microsoft
Everett beta compiler. I had to modify a few things to make it work.
Eventually, cryptest -v said all tests passed. Attached is a diff file
with the differences.

I wanted to use the new CryptoPP version in my project. My project
previously used version 4.2 of CryptoPP. I can't find a solution to
every problem I find.
Of these four lines, the second and fourth line don't work because
GetSubgroupSize() and GetPublicResidue() aren't available. What are the
replacement functions?
    Blob.PutMPInt(Signer.GetKey().GetGroupParameters().GetModulus());

Blob.PutMPInt(Signer.GetKey().GetGroupParameters().GetSubgroupSize());
    Blob.PutMPInt(Signer.GetKey().GetGroupParameters().GetGenerator());

Blob.PutMPInt(Signer.GetKey().GetGroupParameters().GetPublicResidue());

Best regards,

Richard Peters
? adhoc.cpp
? cryptest.vcproj
? cryptlib.vcproj
Index: config.h
===================================================================
RCS file: /cvsroot/cryptopp/c5/config.h,v
retrieving revision 1.2
diff -r1.2 config.h
174c174
< #ifdef _MSC_VER
---
> #if defined(_MSC_VER) && (_MSC_VER < 1310)
Index: eccrypto.cpp
===================================================================
RCS file: /cvsroot/cryptopp/c5/eccrypto.cpp,v
retrieving revision 1.1.1.1
diff -r1.1.1.1 eccrypto.cpp
545c545
< DL_GroupParameters_EC<EC>::Element DL_GroupParameters_EC<EC>::MultiplyElements(const 
Element &a, const Element &b) const
---
> typename DL_GroupParameters_EC<EC>::Element 
> DL_GroupParameters_EC<EC>::MultiplyElements(const Element &a, const Element &b) const
551c551
< DL_GroupParameters_EC<EC>::Element 
DL_GroupParameters_EC<EC>::CascadeExponentiate(const Element &element1, const Integer 
&exponent1, const Element &element2, const Integer &exponent2) const
---
> typename DL_GroupParameters_EC<EC>::Element 
> DL_GroupParameters_EC<EC>::CascadeExponentiate(const Element &element1, const 
> Integer &exponent1, const Element &element2, const Integer &exponent2) const
Index: ida.cpp
===================================================================
RCS file: /cvsroot/cryptopp/c5/ida.cpp,v
retrieving revision 1.1.1.1
diff -r1.1.1.1 ida.cpp
401c401
< #if defined(_MSC_VER) && !defined(__MWERKS__)
---
> #if defined(_MSC_VER) && !defined(__MWERKS__) && (_MSC_VER < 1310)
Index: polynomi.cpp
===================================================================
RCS file: /cvsroot/cryptopp/c5/polynomi.cpp,v
retrieving revision 1.1.1.1
diff -r1.1.1.1 polynomi.cpp
476c476
< RingOfPolynomialsOver<T>::Element RingOfPolynomialsOver<T>::Interpolate(const 
CoefficientType x[], const CoefficientType y[], unsigned int n) const
---
> typename RingOfPolynomialsOver<T>::Element 
> RingOfPolynomialsOver<T>::Interpolate(const CoefficientType x[], const 
> CoefficientType y[], unsigned int n) const
Index: polynomi.h
===================================================================
RCS file: /cvsroot/cryptopp/c5/polynomi.h,v
retrieving revision 1.1.1.1
diff -r1.1.1.1 polynomi.h
307,308c307,308
<   typedef Element::CoefficientType CoefficientType;
<   typedef Element::RandomizationParameter RandomizationParameter;
---
>   typedef typename Element::CoefficientType CoefficientType;
>   typedef typename Element::RandomizationParameter RandomizationParameter;
Index: pubkey.h
===================================================================
RCS file: /cvsroot/cryptopp/c5/pubkey.h,v
retrieving revision 1.1.1.1
diff -r1.1.1.1 pubkey.h
39a40
> #include "asn.h"
Index: zdeflate.cpp
===================================================================
RCS file: /cvsroot/cryptopp/c5/zdeflate.cpp,v
retrieving revision 1.1.1.1
diff -r1.1.1.1 zdeflate.cpp
616c616
< #if defined(_MSC_VER) && !defined(__MWERKS__)
---
> #if defined(_MSC_VER) && !defined(__MWERKS__) && (_MSC_VER < 1310)

I'm not sure about this one, because I kinda hacked my compiler together
(I used the beta everett compiler, together with the platform sdk from 7.0,
stlport 5.0 beta and a few of the normal headers of 7.0)

Index: integer.h
===================================================================
RCS file: /cvsroot/cryptopp/c5/integer.h,v
retrieving revision 1.1.1.1
diff -r1.1.1.1 integer.h
19c19
< #         define SSE2_INTRINSICS_AVAILABLE
---
> //#           define SSE2_INTRINSICS_AVAILABLE

Reply via email to