Skip to content

Commit b09c814

Browse files
committed
Don't access out of bounds array entry array[sizeof(array)]
1 parent f504a14 commit b09c814

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

src/bench/checkblock.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ namespace block_bench {
2020
static void DeserializeBlockTest(benchmark::State& state)
2121
{
2222
CDataStream stream((const char*)block_bench::block413567,
23-
(const char*)&block_bench::block413567[sizeof(block_bench::block413567)],
23+
(const char*)block_bench::block413567 + sizeof(block_bench::block413567),
2424
SER_NETWORK, PROTOCOL_VERSION);
2525
char a = '\0';
2626
stream.write(&a, 1); // Prevent compaction
@@ -36,7 +36,7 @@ static void DeserializeBlockTest(benchmark::State& state)
3636
static void DeserializeAndCheckBlockTest(benchmark::State& state)
3737
{
3838
CDataStream stream((const char*)block_bench::block413567,
39-
(const char*)&block_bench::block413567[sizeof(block_bench::block413567)],
39+
(const char*)block_bench::block413567 + sizeof(block_bench::block413567),
4040
SER_NETWORK, PROTOCOL_VERSION);
4141
char a = '\0';
4242
stream.write(&a, 1); // Prevent compaction

src/test/script_tests.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1013,21 +1013,21 @@ BOOST_AUTO_TEST_CASE(script_PushData)
10131013

10141014
ScriptError err;
10151015
std::vector<std::vector<unsigned char> > directStack;
1016-
BOOST_CHECK(EvalScript(directStack, CScript(&direct[0], &direct[sizeof(direct)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), SigVersion::BASE, &err));
1016+
BOOST_CHECK(EvalScript(directStack, CScript(direct, direct + sizeof(direct)), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), SigVersion::BASE, &err));
10171017
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
10181018

10191019
std::vector<std::vector<unsigned char> > pushdata1Stack;
1020-
BOOST_CHECK(EvalScript(pushdata1Stack, CScript(&pushdata1[0], &pushdata1[sizeof(pushdata1)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), SigVersion::BASE, &err));
1020+
BOOST_CHECK(EvalScript(pushdata1Stack, CScript(pushdata1, pushdata1 + sizeof(pushdata1)), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), SigVersion::BASE, &err));
10211021
BOOST_CHECK(pushdata1Stack == directStack);
10221022
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
10231023

10241024
std::vector<std::vector<unsigned char> > pushdata2Stack;
1025-
BOOST_CHECK(EvalScript(pushdata2Stack, CScript(&pushdata2[0], &pushdata2[sizeof(pushdata2)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), SigVersion::BASE, &err));
1025+
BOOST_CHECK(EvalScript(pushdata2Stack, CScript(pushdata2, pushdata2 + sizeof(pushdata2)), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), SigVersion::BASE, &err));
10261026
BOOST_CHECK(pushdata2Stack == directStack);
10271027
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
10281028

10291029
std::vector<std::vector<unsigned char> > pushdata4Stack;
1030-
BOOST_CHECK(EvalScript(pushdata4Stack, CScript(&pushdata4[0], &pushdata4[sizeof(pushdata4)]), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), SigVersion::BASE, &err));
1030+
BOOST_CHECK(EvalScript(pushdata4Stack, CScript(pushdata4, pushdata4 + sizeof(pushdata4)), SCRIPT_VERIFY_P2SH, BaseSignatureChecker(), SigVersion::BASE, &err));
10311031
BOOST_CHECK(pushdata4Stack == directStack);
10321032
BOOST_CHECK_MESSAGE(err == SCRIPT_ERR_OK, ScriptErrorString(err));
10331033
}

0 commit comments

Comments
 (0)