diff options
Diffstat (limited to 'src/protocol.h')
-rw-r--r-- | src/protocol.h | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/src/protocol.h b/src/protocol.h index 0f5c5559d1..e4b0991774 100644 --- a/src/protocol.h +++ b/src/protocol.h @@ -38,13 +38,11 @@ class CMessageHeader IMPLEMENT_SERIALIZE; template <typename Stream, typename Operation> - inline size_t SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { - size_t nSerSize = 0; + inline void SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { READWRITE(FLATDATA(pchMessageStart)); READWRITE(FLATDATA(pchCommand)); READWRITE(nMessageSize); READWRITE(nChecksum); - return nSerSize; } // TODO: make private (improves encapsulation) @@ -90,12 +88,10 @@ class CAddress : public CService IMPLEMENT_SERIALIZE; template <typename Stream, typename Operation> - inline size_t SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { - size_t nSerSize = 0; - bool fRead = boost::is_same<Operation, CSerActionUnserialize>(); + inline void SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { + bool fRead = ser_action.ForRead(); CAddress* pthis = const_cast<CAddress*>(this); - CService* pip = (CService*)pthis; if (fRead) pthis->Init(); if (nType & SER_DISK) @@ -104,9 +100,7 @@ class CAddress : public CService (nVersion >= CADDR_TIME_VERSION && !(nType & SER_GETHASH))) READWRITE(nTime); READWRITE(nServices); - READWRITE(*pip); - - return nSerSize; + READWRITE(*(CService*)this); } // TODO: make private (improves encapsulation) @@ -131,11 +125,9 @@ class CInv IMPLEMENT_SERIALIZE; template <typename Stream, typename Operation> - inline size_t SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { - size_t nSerSize = 0; + inline void SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { READWRITE(type); READWRITE(hash); - return nSerSize; } friend bool operator<(const CInv& a, const CInv& b); |