aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/init.cpp4
-rw-r--r--src/net.cpp4
-rw-r--r--src/net.h2
-rw-r--r--src/protocol.cpp3
-rw-r--r--src/test/serialize_tests.cpp12
5 files changed, 17 insertions, 8 deletions
diff --git a/src/init.cpp b/src/init.cpp
index 52ebd4a626..d6dc62f707 100644
--- a/src/init.cpp
+++ b/src/init.cpp
@@ -455,8 +455,8 @@ void SetupServerArgs(ArgsManager& argsman)
argsman.AddArg("-maxorphantx=<n>", strprintf("Keep at most <n> unconnectable transactions in memory (default: %u)", DEFAULT_MAX_ORPHAN_TRANSACTIONS), ArgsManager::ALLOW_ANY, OptionsCategory::OPTIONS);
argsman.AddArg("-mempoolexpiry=<n>", strprintf("Do not keep transactions in the mempool longer than <n> hours (default: %u)", DEFAULT_MEMPOOL_EXPIRY_HOURS), ArgsManager::ALLOW_ANY, OptionsCategory::OPTIONS);
argsman.AddArg("-minimumchainwork=<hex>", strprintf("Minimum work assumed to exist on a valid chain in hex (default: %s, testnet: %s, signet: %s)", defaultChainParams->GetConsensus().nMinimumChainWork.GetHex(), testnetChainParams->GetConsensus().nMinimumChainWork.GetHex(), signetChainParams->GetConsensus().nMinimumChainWork.GetHex()), ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::OPTIONS);
- argsman.AddArg("-par=<n>", strprintf("Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)",
- -GetNumCores(), MAX_SCRIPTCHECK_THREADS, DEFAULT_SCRIPTCHECK_THREADS), ArgsManager::ALLOW_ANY, OptionsCategory::OPTIONS);
+ argsman.AddArg("-par=<n>", strprintf("Set the number of script verification threads (0 = auto, up to %d, <0 = leave that many cores free, default: %d)",
+ MAX_SCRIPTCHECK_THREADS, DEFAULT_SCRIPTCHECK_THREADS), ArgsManager::ALLOW_ANY, OptionsCategory::OPTIONS);
argsman.AddArg("-persistmempool", strprintf("Whether to save the mempool on shutdown and load on restart (default: %u)", DEFAULT_PERSIST_MEMPOOL), ArgsManager::ALLOW_ANY, OptionsCategory::OPTIONS);
argsman.AddArg("-persistmempoolv1",
strprintf("Whether a mempool.dat file created by -persistmempool or the savemempool RPC will be written in the legacy format "
diff --git a/src/net.cpp b/src/net.cpp
index 4aee78846a..a2f80cbcf7 100644
--- a/src/net.cpp
+++ b/src/net.cpp
@@ -684,10 +684,8 @@ bool CNode::ReceiveMsgBytes(Span<const uint8_t> msg_bytes, bool& complete)
}
V1Transport::V1Transport(const NodeId node_id, int nTypeIn, int nVersionIn) noexcept :
- m_node_id(node_id), hdrbuf(nTypeIn, nVersionIn), vRecv(nTypeIn, nVersionIn)
+ m_magic_bytes{Params().MessageStart()}, m_node_id(node_id), hdrbuf(nTypeIn, nVersionIn), vRecv(nTypeIn, nVersionIn)
{
- assert(std::size(Params().MessageStart()) == std::size(m_magic_bytes));
- m_magic_bytes = Params().MessageStart();
LOCK(m_recv_mutex);
Reset();
}
diff --git a/src/net.h b/src/net.h
index dde65fd5f0..16312cf72d 100644
--- a/src/net.h
+++ b/src/net.h
@@ -372,7 +372,7 @@ public:
class V1Transport final : public Transport
{
private:
- MessageStartChars m_magic_bytes;
+ const MessageStartChars m_magic_bytes;
const NodeId m_node_id; // Only for logging
mutable Mutex m_recv_mutex; //!< Lock for receive state
mutable CHash256 hasher GUARDED_BY(m_recv_mutex);
diff --git a/src/protocol.cpp b/src/protocol.cpp
index f956728af2..27a0a2ffc1 100644
--- a/src/protocol.cpp
+++ b/src/protocol.cpp
@@ -91,9 +91,8 @@ const static std::vector<std::string> g_all_net_message_types{
};
CMessageHeader::CMessageHeader(const MessageStartChars& pchMessageStartIn, const char* pszCommand, unsigned int nMessageSizeIn)
+ : pchMessageStart{pchMessageStartIn}
{
- pchMessageStart = pchMessageStartIn;
-
// Copy the command name
size_t i = 0;
for (; i < COMMAND_SIZE && pszCommand[i] != 0; ++i) pchCommand[i] = pszCommand[i];
diff --git a/src/test/serialize_tests.cpp b/src/test/serialize_tests.cpp
index 331fc4e228..6d5a14ad9e 100644
--- a/src/test/serialize_tests.cpp
+++ b/src/test/serialize_tests.cpp
@@ -85,6 +85,8 @@ BOOST_AUTO_TEST_CASE(sizes)
BOOST_CHECK_EQUAL(GetSerializeSize(int64_t(0), 0), 8U);
BOOST_CHECK_EQUAL(GetSerializeSize(uint64_t(0), 0), 8U);
BOOST_CHECK_EQUAL(GetSerializeSize(bool(0), 0), 1U);
+ BOOST_CHECK_EQUAL(GetSerializeSize(std::array<uint8_t, 1>{0}, 0), 1U);
+ BOOST_CHECK_EQUAL(GetSerializeSize(std::array<uint8_t, 2>{0, 0}, 0), 2U);
}
BOOST_AUTO_TEST_CASE(varints)
@@ -179,6 +181,16 @@ BOOST_AUTO_TEST_CASE(vector_bool)
BOOST_CHECK((HashWriter{} << vec1).GetHash() == (HashWriter{} << vec2).GetHash());
}
+BOOST_AUTO_TEST_CASE(array)
+{
+ std::array<uint8_t, 32> array1{1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1};
+ DataStream ds;
+ ds << array1;
+ std::array<uint8_t, 32> array2;
+ ds >> array2;
+ BOOST_CHECK(array1 == array2);
+}
+
BOOST_AUTO_TEST_CASE(noncanonical)
{
// Write some non-canonical CompactSize encodings, and