integer
authorLaszlo Boszormenyi (GCS) <gcs@debian.org>
Mon, 5 Jun 2017 06:55:28 +0000 (07:55 +0100)
committerLaszlo Boszormenyi (GCS) <gcs@debian.org>
Mon, 5 Jun 2017 06:55:28 +0000 (07:55 +0100)
Gbp-Pq: Name integer.diff

integer.cpp
integer.h

index 671852dd9c8789d7aa89ea8bef689a4557791a41..02c0c87b7b1d7d3f63c288e31a6577e2eb114a92 100644 (file)
@@ -2929,6 +2929,11 @@ signed long Integer::ConvertToLong() const
        return sign==POSITIVE ? value : -(signed long)value;\r
 }\r
 \r
+Integer::Integer(BufferedTransformation &encodedInteger, size_t byteCount, Signedness s)\r
+{\r
+       Decode(encodedInteger, byteCount, s);\r
+}\r
+\r
 Integer::Integer(BufferedTransformation &encodedInteger, size_t byteCount, Signedness s, ByteOrder o)\r
 {\r
        assert(o == BIG_ENDIAN_ORDER || o == LITTLE_ENDIAN_ORDER);\r
@@ -2946,6 +2951,11 @@ Integer::Integer(BufferedTransformation &encodedInteger, size_t byteCount, Signe
        Decode(encodedInteger, byteCount, s);\r
 }\r
 \r
+Integer::Integer(const byte *encodedInteger, size_t byteCount, Signedness s)\r
+{\r
+       Decode(encodedInteger, byteCount, s);\r
+}\r
+\r
 Integer::Integer(const byte *encodedInteger, size_t byteCount, Signedness s, ByteOrder o)\r
 {\r
        assert(o == BIG_ENDIAN_ORDER || o == LITTLE_ENDIAN_ORDER);\r
@@ -3104,7 +3114,7 @@ Integer::Integer(word value, size_t length)
 }\r
 \r
 template <class T>\r
-static Integer StringToInteger(const T *str, ByteOrder order)\r
+static Integer StringToInteger(const T *str, ByteOrder order = BIG_ENDIAN_ORDER)\r
 {\r
        assert( order == BIG_ENDIAN_ORDER || order == LITTLE_ENDIAN_ORDER );\r
 \r
@@ -3238,12 +3248,24 @@ static Integer StringToInteger(const T *str, ByteOrder order)
        return v;\r
 }\r
 \r
+Integer::Integer(const char *str)\r
+       : reg(2), sign(POSITIVE)\r
+{\r
+       *this = StringToInteger(str);\r
+}\r
+\r
 Integer::Integer(const char *str, ByteOrder order)\r
        : reg(2), sign(POSITIVE)\r
 {\r
        *this = StringToInteger(str,order);\r
 }\r
 \r
+Integer::Integer(const wchar_t *str)\r
+       : reg(2), sign(POSITIVE)\r
+{\r
+       *this = StringToInteger(str);\r
+}\r
+\r
 Integer::Integer(const wchar_t *str, ByteOrder order)\r
        : reg(2), sign(POSITIVE)\r
 {\r
index f289779a8a3b7d95bc3f43f488dc33be1e8c18ad..f5773bd517c936602850f0ed02e1ffceb3f7b60e 100644 (file)
--- a/integer.h
+++ b/integer.h
@@ -120,7 +120,8 @@ public:
                //!   insensitive suffix of 'h', 'o', or 'b'.  No suffix means base 10.\r
                //! \details Byte order was added at Crypto++ 5.7 to allow use of little-endian\r
                //!   integers with curve25519, Poly1305 and Microsoft CAPI.\r
-               explicit Integer(const char *str, ByteOrder order = BIG_ENDIAN_ORDER);\r
+               explicit Integer(const char *str);\r
+               explicit Integer(const char *str, ByteOrder order);\r
 \r
                //! \brief Convert from a wide C-string\r
                //! \param str wide C-string value\r
@@ -129,7 +130,8 @@ public:
                //!   insensitive suffix of 'h', 'o', or 'b'.  No suffix means base 10.\r
                //! \details Byte order was added at Crypto++ 5.7 to allow use of little-endian\r
                //!   integers with curve25519, Poly1305 and Microsoft CAPI.\r
-               explicit Integer(const wchar_t *str, ByteOrder order = BIG_ENDIAN_ORDER);\r
+               explicit Integer(const wchar_t *str);\r
+               explicit Integer(const wchar_t *str, ByteOrder order);\r
 \r
                //! \brief Convert from a big-endian byte array\r
                //! \param encodedInteger big-endian byte array\r
@@ -138,7 +140,8 @@ public:
                //! \param order byte order\r
                //! \details Byte order was added at Crypto++ 5.7 to allow use of little-endian\r
                //!   integers with curve25519, Poly1305 and Microsoft CAPI.\r
-               Integer(const byte *encodedInteger, size_t byteCount, Signedness sign=UNSIGNED, ByteOrder order = BIG_ENDIAN_ORDER);\r
+               Integer(const byte *encodedInteger, size_t byteCount, Signedness sign=UNSIGNED);\r
+               Integer(const byte *encodedInteger, size_t byteCount, Signedness sign, ByteOrder order);\r
 \r
                //! \brief Convert from a big-endian array\r
                //! \param bt BufferedTransformation object with big-endian byte array\r
@@ -147,7 +150,8 @@ public:
                //! \param order byte order\r
                //! \details Byte order was added at Crypto++ 5.7 to allow use of little-endian\r
                //!   integers with curve25519, Poly1305 and Microsoft CAPI.\r
-               Integer(BufferedTransformation &bt, size_t byteCount, Signedness sign=UNSIGNED, ByteOrder order = BIG_ENDIAN_ORDER);\r
+               Integer(BufferedTransformation &bt, size_t byteCount, Signedness sign=UNSIGNED);\r
+               Integer(BufferedTransformation &bt, size_t byteCount, Signedness sign, ByteOrder order);\r
 \r
                //! \brief Convert from a BER encoded byte array\r
                //! \param bt BufferedTransformation object with BER encoded byte array\r