Skip to content

Commit 12f5787

Browse files
committed
Merge pull request #3559
e6c6bc9 Adds additional zero checks for setCompact These encoded values should all decode to zero (Noel Tiernan)
2 parents 3198604 + e6c6bc9 commit 12f5787

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

src/test/bignum_tests.cpp

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,42 @@ BOOST_AUTO_TEST_CASE(bignum_SetCompact)
135135
BOOST_CHECK_EQUAL(num.GetHex(), "0");
136136
BOOST_CHECK_EQUAL(num.GetCompact(), 0U);
137137

138+
num.SetCompact(0x01003456);
139+
BOOST_CHECK_EQUAL(num.GetHex(), "0");
140+
BOOST_CHECK_EQUAL(num.GetCompact(), 0U);
141+
142+
num.SetCompact(0x02000056);
143+
BOOST_CHECK_EQUAL(num.GetHex(), "0");
144+
BOOST_CHECK_EQUAL(num.GetCompact(), 0U);
145+
146+
num.SetCompact(0x03000000);
147+
BOOST_CHECK_EQUAL(num.GetHex(), "0");
148+
BOOST_CHECK_EQUAL(num.GetCompact(), 0U);
149+
150+
num.SetCompact(0x04000000);
151+
BOOST_CHECK_EQUAL(num.GetHex(), "0");
152+
BOOST_CHECK_EQUAL(num.GetCompact(), 0U);
153+
154+
num.SetCompact(0x00923456);
155+
BOOST_CHECK_EQUAL(num.GetHex(), "0");
156+
BOOST_CHECK_EQUAL(num.GetCompact(), 0U);
157+
158+
num.SetCompact(0x01803456);
159+
BOOST_CHECK_EQUAL(num.GetHex(), "0");
160+
BOOST_CHECK_EQUAL(num.GetCompact(), 0U);
161+
162+
num.SetCompact(0x02800056);
163+
BOOST_CHECK_EQUAL(num.GetHex(), "0");
164+
BOOST_CHECK_EQUAL(num.GetCompact(), 0U);
165+
166+
num.SetCompact(0x03800000);
167+
BOOST_CHECK_EQUAL(num.GetHex(), "0");
168+
BOOST_CHECK_EQUAL(num.GetCompact(), 0U);
169+
170+
num.SetCompact(0x04800000);
171+
BOOST_CHECK_EQUAL(num.GetHex(), "0");
172+
BOOST_CHECK_EQUAL(num.GetCompact(), 0U);
173+
138174
num.SetCompact(0x01123456);
139175
BOOST_CHECK_EQUAL(num.GetHex(), "12");
140176
BOOST_CHECK_EQUAL(num.GetCompact(), 0x01120000U);

0 commit comments

Comments
 (0)