diff options
author | Kirill Volinsky <mataes2007@gmail.com> | 2014-09-27 09:25:36 +0000 |
---|---|---|
committer | Kirill Volinsky <mataes2007@gmail.com> | 2014-09-27 09:25:36 +0000 |
commit | 93467b8c3702be5fc9f9b60c3ff6863cb37ccd8d (patch) | |
tree | 23659d34af33a062ba60bd7cc5dcd176f3f23b3a /protocols/Tox/src/tox_utils.cpp | |
parent | e02a45507e91d072b86f26f36dbebf655ad9d79f (diff) |
encrypt tox profile (dont't work, crashed on tox_encrypted_load)
git-svn-id: http://svn.miranda-ng.org/main/trunk@10612 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'protocols/Tox/src/tox_utils.cpp')
-rw-r--r-- | protocols/Tox/src/tox_utils.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/protocols/Tox/src/tox_utils.cpp b/protocols/Tox/src/tox_utils.cpp index 47759ffd5c..2b2d5daa75 100644 --- a/protocols/Tox/src/tox_utils.cpp +++ b/protocols/Tox/src/tox_utils.cpp @@ -155,7 +155,12 @@ void CToxProto::LoadToxData() return;
}
- tox_load(tox, data, size);
+ if (tox_is_data_encrypted(data)) {
+ ptrA password(mir_utf8encodeW(ptrT(getTStringA("Password"))));
+ tox_encrypted_load(tox, data, size, (uint8_t*)(char*)password, strlen(password));
+ }
+ else
+ tox_load(tox, data, size);
mir_free(data);
fclose(hFile);
@@ -171,9 +176,10 @@ void CToxProto::SaveToxData() return;
}
- uint32_t size = tox_size(tox);
+ uint32_t size = tox_encrypted_size(tox);
uint8_t *data = (uint8_t*)mir_alloc(size);
- tox_save(tox, data);
+ ptrA password(mir_utf8encodeW(ptrT(getTStringA("Password"))));
+ tox_encrypted_save(tox, data, (uint8_t*)(char*)password, strlen(password));
if (fwrite(data, sizeof(uint8_t), size, hFile) != size)
{
|