From 58ac4567a402d383c3edb0749b9f2fb88b8422d6 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sun, 25 Jan 2015 19:54:43 +0000 Subject: less pointers, less memory problems git-svn-id: http://svn.miranda-ng.org/main/trunk@11906 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/WhatsApp/src/WhatsAPI++/KeyStream.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'protocols/WhatsApp/src/WhatsAPI++/KeyStream.cpp') diff --git a/protocols/WhatsApp/src/WhatsAPI++/KeyStream.cpp b/protocols/WhatsApp/src/WhatsAPI++/KeyStream.cpp index f4741729a7..d027cb9c86 100644 --- a/protocols/WhatsApp/src/WhatsAPI++/KeyStream.cpp +++ b/protocols/WhatsApp/src/WhatsAPI++/KeyStream.cpp @@ -14,8 +14,18 @@ using namespace Utilities; -KeyStream::KeyStream(unsigned char* _key, unsigned char* _keyMac) : +KeyStream::KeyStream() : seq(0) +{ + HMAC_CTX_init(&hmac); +} + +KeyStream::~KeyStream() +{ + HMAC_CTX_cleanup(&hmac); +} + +void KeyStream::init(unsigned char* _key, unsigned char* _keyMac) { memcpy(key, _key, 20); memcpy(keyMac, _keyMac, 20); @@ -24,13 +34,6 @@ KeyStream::KeyStream(unsigned char* _key, unsigned char* _keyMac) : unsigned char drop[768]; RC4(&this->rc4, sizeof(drop), drop, drop); - - HMAC_CTX_init(&hmac); -} - -KeyStream::~KeyStream() -{ - HMAC_CTX_cleanup(&hmac); } void KeyStream::keyFromPasswordAndNonce(const std::string& pass, const std::vector& nonce, unsigned char *out) -- cgit v1.2.3