From 6f539a2dbb38966fdb11da4b8ef0e7b3f4bc68c2 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Fri, 27 Jul 2018 21:47:43 +0300 Subject: Add support for main/re/zero packet versions in MessageIn class. --- src/net/messagein.cpp | 24 ++++++++++++++++++++++++ src/net/messagein.h | 10 ++++++++-- 2 files changed, 32 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/net/messagein.cpp b/src/net/messagein.cpp index d5888534e..ff34cd2c5 100644 --- a/src/net/messagein.cpp +++ b/src/net/messagein.cpp @@ -43,6 +43,9 @@ PRAGMA48(GCC diagnostic pop) (CAST_U16(CAST_U8(high))) << 8)) extern int itemIdLen; +extern int packetVersionMain; +extern int packetVersionRe; +extern int packetVersionZero; namespace Net { @@ -474,4 +477,25 @@ unsigned char *MessageIn::readBytes(int length, const char *const dstr) return buf; } +int MessageIn::getVersionMain() const noexcept2 +{ + if (packetVersionMain >= mVersion) + return mVersion; + return 0; +} + +int MessageIn::getVersionRe() const noexcept2 +{ + if (packetVersionRe >= mVersion) + return mVersion; + return 0; +} + +int MessageIn::getVersionZero() const noexcept2 +{ + if (packetVersionZero >= mVersion) + return mVersion; + return 0; +} + } // namespace Net diff --git a/src/net/messagein.h b/src/net/messagein.h index 255710349..155e2a6b8 100644 --- a/src/net/messagein.h +++ b/src/net/messagein.h @@ -130,9 +130,15 @@ class MessageIn notfinal static uint8_t fromServerDirection(const uint8_t serverDir) A_WARN_UNUSED; - unsigned int getVersion() const noexcept2 A_WARN_UNUSED + int getVersion() const noexcept2 A_WARN_UNUSED { return mVersion; } + int getVersionMain() const noexcept2 A_WARN_UNUSED; + + int getVersionRe() const noexcept2 A_WARN_UNUSED; + + int getVersionZero() const noexcept2 A_WARN_UNUSED; + protected: /** * Constructor. @@ -148,7 +154,7 @@ class MessageIn notfinal * reading it. */ unsigned int mPos; - unsigned int mVersion; + int mVersion; uint16_t mId; /**< The message ID. */ bool mIgnore; }; -- cgit v1.2.3-70-g09d2