Safe overloading with std::equal
Since C++20, there is a safer way to overload std::equal:
template< class InputIt1, class InputIt2 >
constexpr bool equal( InputIt1 first1, InputIt1 last1,
InputIt2 first2, InputIt2 last2 );
Because if they are different lengths, it won't run past on either
side. In theory, they should always be the same length.
Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I1d25331521c1590b5f448f93b657f58f9f06d778
diff --git a/message_parsers.cpp b/message_parsers.cpp
index d0fe344..c6dd4f8 100644
--- a/message_parsers.cpp
+++ b/message_parsers.cpp
@@ -366,7 +366,8 @@
size_t length = packet.size() - integrityAlgo->authCodeLength -
message::parser::RMCP_SESSION_HEADER_SIZE;
- return integrityAlgo->verifyIntegrityData(packet, length, integrityIter);
+ return integrityAlgo->verifyIntegrityData(packet, length, integrityIter,
+ packet.cend());
}
void addIntegrityData(std::vector<uint8_t>& packet,