From 80221d816eeb98f0df38e0243390033c614952f3 Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Tue, 28 Nov 2017 22:12:43 +0300 Subject: Source files converted to utf-8 --- plugins/CryptoPP/src/cpp_rsam.cpp | 138 +++++++++++++++++++------------------- 1 file changed, 69 insertions(+), 69 deletions(-) (limited to 'plugins/CryptoPP/src/cpp_rsam.cpp') diff --git a/plugins/CryptoPP/src/cpp_rsam.cpp b/plugins/CryptoPP/src/cpp_rsam.cpp index c2eddf6cc8..1ff82b508d 100644 --- a/plugins/CryptoPP/src/cpp_rsam.cpp +++ b/plugins/CryptoPP/src/cpp_rsam.cpp @@ -281,7 +281,7 @@ int __cdecl rsa_disconnect(HANDLE context) Sent_NetLog("rsa_disconnect: %08x", context); #endif pCNTX ptr = get_context_on_id(context); if (!ptr) return 0; - rsa_free(ptr); // удалим трэд и очередь сообщений + rsa_free(ptr); // удалим трэд Рё очередь сообщений pRSADATA p = (pRSADATA)cpp_alloc_pdata(ptr); if (!p->state) return 1; @@ -291,7 +291,7 @@ int __cdecl rsa_disconnect(HANDLE context) inject_msg(context, 0xF0, encode_msg(0, p, ::hash(buffer, RAND_SIZE))); p->state = 0; - imp->rsa_notify(context, -3); // соединение разорвано вручную + imp->rsa_notify(context, -3); // соединение разорвано вручную return 1; } @@ -302,12 +302,12 @@ int __cdecl rsa_disabled(HANDLE context) Sent_NetLog("rsa_disabled: %08x", context); #endif pCNTX ptr = get_context_on_id(context); if (!ptr) return 0; - rsa_free(ptr); // удалим трэд и очередь сообщений + rsa_free(ptr); // удалим трэд Рё очередь сообщений pRSADATA p = (pRSADATA)cpp_alloc_pdata(ptr); p->state = 0; inject_msg(context, 0xFF, null); - // imp->rsa_notify(-context,-8); // соединение разорвано по причине "disabled" + // imp->rsa_notify(-context,-8); // соединение разорвано РїРѕ причине "disabled" return 1; } @@ -332,38 +332,38 @@ LPSTR __cdecl rsa_recv(HANDLE context, LPCSTR msg) #if defined(_DEBUG) || defined(NETLIB_LOG) Sent_NetLog("rsa_recv: %02x %d", type, p->state); #endif - if (type > 0x10 && type < 0xE0) // проверим тип сообщения (когда соединение еще не установлено) - if (p->state == 0 || p->state != (type >> 4)) { // неверное состояние - // шлем перерывание сессии + if (type > 0x10 && type < 0xE0) // проверим тип сообщения (РєРѕРіРґР° соединение еще РЅРµ установлено) + if (p->state == 0 || p->state != (type >> 4)) { // неверное состояние + // шлем перерывание сессии p->state = 0; p->time = 0; - rsa_free(ptr); // удалим трэд и очередь сообщений - null_msg(context, 0x00, -1); // сессия разорвана по ошибке, неверный тип сообщения + rsa_free(ptr); // удалим трэд Рё очередь сообщений + null_msg(context, 0x00, -1); // сессия разорвана РїРѕ ошибке, неверный тип сообщения return nullptr; } switch (type) { - case 0x00: // прерывание сессии по ошибке другой стороной + case 0x00: // прерывание сессии РїРѕ ошибке РґСЂСѓРіРѕР№ стороной { - // если соединение установлено - ничего не делаем + // если соединение установлено - ничего РЅРµ делаем if (p->state == 0 || p->state == 7) return nullptr; - // иначе сбрасываем текущее состояние + // иначе сбрасываем текущее состояние p->state = 0; p->time = 0; - imp->rsa_notify(context, -2); // сессия разорвана по ошибке другой стороной + imp->rsa_notify(context, -2); // сессия разорвана РїРѕ ошибке РґСЂСѓРіРѕР№ стороной } break; - // это все будем обрабатывать в отдельном потоке, чтобы избежать таймаутов - case 0x10: // запрос на установку соединения - case 0x22: // получили удаленный паблик, отправляем уже криптоключ - case 0x23: // отправляем локальный паблик - case 0x24: // получили удаленный паблик, отправим локальный паблик - case 0x33: // получили удаленный паблик, отправляем криптоключ + // это РІСЃРµ будем обрабатывать РІ отдельном потоке, чтобы избежать таймаутов + case 0x10: // запрос РЅР° установку соединения + case 0x22: // получили удаленный паблик, отправляем СѓР¶Рµ криптоключ + case 0x23: // отправляем локальный паблик + case 0x24: // получили удаленный паблик, отправим локальный паблик + case 0x33: // получили удаленный паблик, отправляем криптоключ case 0x34: - case 0x21: // получили криптоключ, отправляем криптотест + case 0x21: // получили криптоключ, отправляем криптотест case 0x32: case 0x40: - case 0x0D: // запрос паблика - case 0xD0: // ответ пабликом + case 0x0D: // запрос паблика + case 0xD0: // ответ пабликом if (!p->event) { p->event = CreateEvent(nullptr, FALSE, FALSE, nullptr); unsigned int tID; @@ -376,13 +376,13 @@ LPSTR __cdecl rsa_recv(HANDLE context, LPCSTR msg) mir_cslock lck(localQueueMutex); p->queue->push(tlv(type, data)); } - SetEvent(p->event); // сказали обрабатывать :) + SetEvent(p->event); // сказали обрабатывать :) break; - case 0x50: // получили криптотест, отправляем свой криптотест + case 0x50: // получили криптотест, отправляем СЃРІРѕР№ криптотест if (!decode_msg(p, data).length()) { p->state = 0; p->time = 0; - null_msg(context, 0x00, -type); // сессия разорвана по ошибке + null_msg(context, 0x00, -type); // сессия разорвана РїРѕ ошибке return nullptr; } { @@ -391,60 +391,60 @@ LPSTR __cdecl rsa_recv(HANDLE context, LPCSTR msg) inject_msg(context, 0x60, encode_msg(0, p, ::hash(buffer, RAND_SIZE))); } p->state = 7; p->time = 0; - rsa_free_thread(p); // удалим трэд и очередь сообщений - imp->rsa_notify(context, 1); // заебися, криптосессия установлена + rsa_free_thread(p); // удалим трэд Рё очередь сообщений + imp->rsa_notify(context, 1); // заебися, криптосессия установлена break; - case 0x60: // получили криптотест, сессия установлена + case 0x60: // получили криптотест, сессия установлена if (!decode_msg(p, data).length()) { p->state = 0; p->time = 0; - null_msg(context, 0x00, -type); // сессия разорвана по ошибке + null_msg(context, 0x00, -type); // сессия разорвана РїРѕ ошибке return nullptr; } p->state = 7; p->time = 0; - rsa_free_thread(p); // удалим трэд и очередь сообщений - imp->rsa_notify(context, 1); // заебися, криптосессия установлена + rsa_free_thread(p); // удалим трэд Рё очередь сообщений + imp->rsa_notify(context, 1); // заебися, криптосессия установлена break; - case 0x70: // получили AES сообщение, декодируем + case 0x70: // получили AES сообщение, декодируем { mir_free(ptr->tmp); string msg = decode_msg(p, data); if (msg.length()) return ptr->tmp = mir_strdup(msg.c_str()); else { - imp->rsa_notify(context, -5); // ошибка декодирования AES сообщения + imp->rsa_notify(context, -5); // ошибка декодирования AES сообщения return ptr->tmp = nullptr; } } - case 0xE0: // получили RSA сообщение, декодируем + case 0xE0: // получили RSA сообщение, декодируем { mir_free(ptr->tmp); string msg = decode_rsa(p, r, data); if (msg.length()) return ptr->tmp = mir_strdup(msg.c_str()); else { - imp->rsa_notify(context, -6); // ошибка декодирования RSA сообщения + imp->rsa_notify(context, -6); // ошибка декодирования RSA сообщения return ptr->tmp = nullptr; } } - case 0xF0: // разрыв соединения вручную + case 0xF0: // разрыв соединения вручную { if (p->state != 7) return nullptr; string msg = decode_msg(p, data); if (!msg.length()) return nullptr; p->state = 0; - rsa_free(ptr); // удалим трэд и очередь сообщений - imp->rsa_notify(context, -4); // соединение разорвано вручную другой стороной + rsa_free(ptr); // удалим трэд Рё очередь сообщений + imp->rsa_notify(context, -4); // соединение разорвано вручную РґСЂСѓРіРѕР№ стороной } break; - case 0xFF: // разрыв соединения по причине "disabled" + case 0xFF: // разрыв соединения РїРѕ причине "disabled" p->state = 0; - rsa_free(ptr); // удалим трэд и очередь сообщений - imp->rsa_notify(context, -8); // соединение разорвано по причине "disabled" + rsa_free(ptr); // удалим трэд Рё очередь сообщений + imp->rsa_notify(context, -8); // соединение разорвано РїРѕ причине "disabled" break; } @@ -459,11 +459,11 @@ int __cdecl rsa_send(HANDLE context, LPCSTR msg) pCNTX ptr = get_context_on_id(context); if (!ptr) return 0; pRSADATA p = (pRSADATA)cpp_alloc_pdata(ptr); if (p->state != 0 && p->state != 7) return 0; - if (p->state == 7) // сессия установлена, шифруем AES и отправляем + if (p->state == 7) // сессия установлена, шифруем AES Рё отправляем inject_msg(context, 0x70, encode_msg(1, p, string(msg))); - else if (p->state == 0) { // сессия установлена, отправляем RSA сообщение + else if (p->state == 0) { // сессия установлена, отправляем RSA сообщение if (!p->pub_k.length()) return 0; - // есть паблик ключ - отправим сообщение + // есть паблик ключ - отправим сообщение pRSAPRIV r = rsa_get_priv(ptr); inject_msg(context, 0xE0, encode_rsa(1, p, r, string(msg))); } @@ -646,7 +646,7 @@ void rsa_timeout(HANDLE context, pRSADATA p) #endif p->state = 0; p->time = 0; // null_msg(context,0x00,-7); - imp->rsa_notify(context, -7); // сессия разорвана по таймауту + imp->rsa_notify(context, -7); // сессия разорвана РїРѕ таймауту } int __cdecl rsa_encrypt_file(HANDLE context, LPCSTR file_in, LPCSTR file_out) @@ -707,19 +707,19 @@ int __cdecl rsa_recv_thread(HANDLE context, string& msg) un_tlv(un_tlv(un_tlv(data, t[0], features), t[1], sha1), t[2], sha2); BOOL lr = (p->pub_s == sha1); BOOL ll = (r->pub_s == sha2); switch ((lr << 4) | ll) { - case 0x11: // оба паблика совпали + case 0x11: // РѕР±Р° паблика совпали inject_msg(context, 0x21, gen_aes_key_iv(ptr->mode, p, r)); p->state = 5; break; - case 0x10: // совпал удаленный паблик, нужен локальный + case 0x10: // совпал удаленный паблик, нужен локальный inject_msg(context, 0x22, tlv(0, features) + tlv(1, r->pub_k) + tlv(2, r->pub_s)); p->state = 3; break; - case 0x01: // совпал локальный паблик, нужен удаленный + case 0x01: // совпал локальный паблик, нужен удаленный inject_msg(context, 0x23, tlv(0, features)); p->state = 3; break; - case 0x00: // не совпали оба паблика + case 0x00: // РЅРµ совпали РѕР±Р° паблика inject_msg(context, 0x24, tlv(0, features) + tlv(1, r->pub_k) + tlv(2, r->pub_s)); p->state = 3; break; @@ -727,14 +727,14 @@ int __cdecl rsa_recv_thread(HANDLE context, string& msg) } break; - case 0x22: // получили удаленный паблик, отправляем уже криптоключ + case 0x22: // получили удаленный паблик, отправляем СѓР¶Рµ криптоключ { string pub; un_tlv(un_tlv(data, t[0], features), t[1], pub); string sig = ::hash(pub); if (!imp->rsa_check_pub(context, (PBYTE)pub.data(), (int)pub.length(), (PBYTE)sig.data(), (int)sig.length())) { p->state = 0; p->time = 0; - null_msg(context, 0x00, -type); // сессия разорвана по ошибке + null_msg(context, 0x00, -type); // сессия разорвана РїРѕ ошибке return 0; } init_pub(p, pub); @@ -747,20 +747,20 @@ int __cdecl rsa_recv_thread(HANDLE context, string& msg) } break; - case 0x23: // отправляем локальный паблик + case 0x23: // отправляем локальный паблик un_tlv(data, t[0], features); inject_msg(context, 0x33, tlv(1, r->pub_k) + tlv(2, r->pub_s)); p->state = 4; break; - case 0x24: // получили удаленный паблик, отправим локальный паблик + case 0x24: // получили удаленный паблик, отправим локальный паблик { string pub; un_tlv(un_tlv(data, t[0], features), t[1], pub); string sig = ::hash(pub); if (!imp->rsa_check_pub(context, (PBYTE)pub.data(), (int)pub.length(), (PBYTE)sig.data(), (int)sig.length())) { p->state = 0; p->time = 0; - null_msg(context, 0x00, -type); // сессия разорвана по ошибке + null_msg(context, 0x00, -type); // сессия разорвана РїРѕ ошибке return 0; } init_pub(p, pub); @@ -773,7 +773,7 @@ int __cdecl rsa_recv_thread(HANDLE context, string& msg) } break; - case 0x33: // получили удаленный паблик, отправляем криптоключ + case 0x33: // получили удаленный паблик, отправляем криптоключ case 0x34: { string pub; @@ -781,7 +781,7 @@ int __cdecl rsa_recv_thread(HANDLE context, string& msg) string sig = ::hash(pub); if (!imp->rsa_check_pub(context, (PBYTE)pub.data(), (int)pub.length(), (PBYTE)sig.data(), (int)sig.length())) { p->state = 0; p->time = 0; - null_msg(context, 0x00, -type); // сессия разорвана по ошибке + null_msg(context, 0x00, -type); // сессия разорвана РїРѕ ошибке return 0; } init_pub(p, pub); @@ -794,14 +794,14 @@ int __cdecl rsa_recv_thread(HANDLE context, string& msg) } break; - case 0x21: // получили криптоключ, отправляем криптотест + case 0x21: // получили криптоключ, отправляем криптотест case 0x32: case 0x40: { string key = decode_rsa(p, r, data); if (!key.length()) { p->state = 0; p->time = 0; - null_msg(context, 0x00, -type); // сессия разорвана по ошибке + null_msg(context, 0x00, -type); // сессия разорвана РїРѕ ошибке return 0; } un_tlv(key, t[0], p->aes_k); @@ -813,21 +813,21 @@ int __cdecl rsa_recv_thread(HANDLE context, string& msg) } break; - case 0x0D: // запрос паблика - case 0xD0: // ответ пабликом + case 0x0D: // запрос паблика + case 0xD0: // ответ пабликом { string pub, sha; un_tlv(un_tlv(un_tlv(data, t[0], features), t[1], pub), t[2], sha); - if (p->pub_k != pub) { // пришел новый паблик + if (p->pub_k != pub) { // пришел новый паблик string sig = ::hash(pub); if (!imp->rsa_check_pub(context, (PBYTE)pub.data(), (int)pub.length(), (PBYTE)sig.data(), (int)sig.length())) { p->state = 0; p->time = 0; - null_msg(context, 0x00, -type); // сессия разорвана по ошибке + null_msg(context, 0x00, -type); // сессия разорвана РїРѕ ошибке return 0; } init_pub(p, pub); } - if (type == 0x0D) // нужно отправить мой паблик + if (type == 0x0D) // РЅСѓР¶РЅРѕ отправить РјРѕР№ паблик inject_msg(context, 0xD0, tlv(0, features) + tlv(1, r->pub_k) + tlv(2, p->pub_s)); p->state = 0; p->time = 0; @@ -859,7 +859,7 @@ int rsa_free(pCNTX ptr) return true; if (p->event) { - p->thread_exit = 2; // отпускаем поток в свободное плавание + p->thread_exit = 2; // отпускаем поток РІ СЃРІРѕР±РѕРґРЅРѕРµ плавание SetEvent(p->event); return false; } @@ -875,7 +875,7 @@ void rsa_free_thread(pRSADATA p) if (p->event) { p->thread_exit = 1; SetEvent(p->event); - // ждем завершения потока + // ждем завершения потока WaitForSingleObject(p->thread, INFINITE); CloseHandle(p->thread); CloseHandle(p->event); @@ -911,7 +911,7 @@ unsigned __stdcall sttConnectThread(LPVOID arg) WaitForSingleObject(p->event, INFINITE); // dwMsec rc==WAIT_TIMEOUT if (p->thread_exit == 1) return 0; if (p->thread_exit == 2) { - // мы в свободном плавании - освободим память и завершим трэд + // РјС‹ РІ СЃРІРѕР±РѕРґРЅРѕРј плавании - РѕСЃРІРѕР±РѕРґРёРј память Рё завершим трэд CloseHandle(p->thread); CloseHandle(p->event); SAFE_DELETE(p->queue); @@ -919,11 +919,11 @@ unsigned __stdcall sttConnectThread(LPVOID arg) return 0; } - // дождались сообщения в очереди + // дождались сообщения РІ очереди while (!p->thread_exit && p->queue && !p->queue->empty()) { - // обработаем сообщения из очереди + // обработаем сообщения РёР· очереди if (rsa_recv_thread(context, p->queue->front()) == -1) { - // очистить очередь + // очистить очередь clear_queue(p); break; } -- cgit v1.2.3