aboutsummaryrefslogtreecommitdiff
path: root/src/net.cpp
diff options
context:
space:
mode:
authorPieter Wuille <pieter.wuille@gmail.com>2016-11-07 14:12:26 -0800
committerPieter Wuille <pieter.wuille@gmail.com>2016-11-07 14:19:44 -0800
commit9f554e03ebe5701c1b75ff03b3d6152095c0cad3 (patch)
tree1b71c507fc134b726c5bf39ec48e31396c936568 /src/net.cpp
parent1253f8692fc3a11be9430685cd405236a68df6c3 (diff)
parentfe1dc62cef88280d2490a619beded052f313c6fc (diff)
Merge #9045: Hash P2P messages as they are received instead of at process-time
fe1dc62 Hash P2P messages as they are received instead of at process-time (Matt Corallo)
Diffstat (limited to 'src/net.cpp')
-rw-r--r--src/net.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/net.cpp b/src/net.cpp
index 4ab8ef98ab..e47a8bb168 100644
--- a/src/net.cpp
+++ b/src/net.cpp
@@ -742,12 +742,21 @@ int CNetMessage::readData(const char *pch, unsigned int nBytes)
vRecv.resize(std::min(hdr.nMessageSize, nDataPos + nCopy + 256 * 1024));
}
+ hasher.Write((const unsigned char*)pch, nCopy);
memcpy(&vRecv[nDataPos], pch, nCopy);
nDataPos += nCopy;
return nCopy;
}
+const uint256& CNetMessage::GetMessageHash() const
+{
+ assert(complete());
+ if (data_hash.IsNull())
+ hasher.Finalize(data_hash.begin());
+ return data_hash;
+}
+