summaryrefslogtreecommitdiff
path: root/protocols/WhatsApp/src/WhatsAPI++/WALogin.h
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2015-01-25 19:54:43 +0000
committerGeorge Hazan <george.hazan@gmail.com>2015-01-25 19:54:43 +0000
commit58ac4567a402d383c3edb0749b9f2fb88b8422d6 (patch)
tree224f909ab2abea950795d88b15b8b8a9e486551b /protocols/WhatsApp/src/WhatsAPI++/WALogin.h
parentdac1f42ef81ac1119430fd294a6b35b0b8cd6837 (diff)
less pointers, less memory problems
git-svn-id: http://svn.miranda-ng.org/main/trunk@11906 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'protocols/WhatsApp/src/WhatsAPI++/WALogin.h')
-rw-r--r--protocols/WhatsApp/src/WhatsAPI++/WALogin.h14
1 files changed, 5 insertions, 9 deletions
diff --git a/protocols/WhatsApp/src/WhatsAPI++/WALogin.h b/protocols/WhatsApp/src/WhatsAPI++/WALogin.h
index 3e08bdbe8e..ab1e13472b 100644
--- a/protocols/WhatsApp/src/WhatsAPI++/WALogin.h
+++ b/protocols/WhatsApp/src/WhatsAPI++/WALogin.h
@@ -30,9 +30,11 @@ private:
void hmacsha1(unsigned char* text, int textLength, unsigned char *out);
public:
- KeyStream(unsigned char* _key, unsigned char* _keyMac);
+ KeyStream();
~KeyStream();
+ void init(unsigned char *_key, unsigned char *_keyMac);
+
static void keyFromPasswordAndNonce(const std::string& pass, const std::vector<unsigned char>& nonce, unsigned char *out);
void decodeMessage(unsigned char* buffer, int macOffset, int offset, const int length);
void encodeMessage(unsigned char* buffer, int macOffset, int offset, const int length);
@@ -42,7 +44,6 @@ public:
class WALogin {
private:
static const std::string NONCE_KEY;
- KeyStream* outputKey;
WAConnection* connection;
BinTreeNodeReader* inn;
BinTreeNodeWriter* out;
@@ -56,16 +57,11 @@ private:
std::vector<unsigned char> readSuccess();
public:
- std::string user;
- std::string domain;
- std::string password;
- std::string resource;
- std::string push_name;
- bool supports_receipt_acks;
time_t expire_date;
int account_kind;
+ std::string password;
- WALogin(WAConnection* connection, BinTreeNodeReader *reader, BinTreeNodeWriter *writer, const std::string& domain, const std::string& user, const std::string& resource, const std::string& password, const std::string& push_name);
+ WALogin(WAConnection* connection, BinTreeNodeReader *reader, BinTreeNodeWriter *writer, const std::string& password);
~WALogin();
std::vector<unsigned char>* login(const std::vector<unsigned char>& blobLength);