From c3850aba6397cc8f0e25dabde4968a252c205343 Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Sat, 23 Feb 2013 17:42:18 +0000 Subject: added version info git-svn-id: http://svn.miranda-ng.org/main/trunk@3736 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_10.vcxproj | 8 +- .../Cryptors/RC4/rc4_10.vcxproj.filters | 18 ++- plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_11.vcxproj | 8 +- .../Cryptors/RC4/rc4_11.vcxproj.filters | 18 ++- plugins/Dbx_mmap_SA/Cryptors/RC4/res/Version.rc | 38 ++++++ plugins/Dbx_mmap_SA/Cryptors/RC4/src/Version.h | 11 ++ plugins/Dbx_mmap_SA/Cryptors/RC4/src/cryptor.c | 133 --------------------- plugins/Dbx_mmap_SA/Cryptors/RC4/src/cryptor.cpp | 133 +++++++++++++++++++++ 8 files changed, 230 insertions(+), 137 deletions(-) create mode 100644 plugins/Dbx_mmap_SA/Cryptors/RC4/res/Version.rc create mode 100644 plugins/Dbx_mmap_SA/Cryptors/RC4/src/Version.h delete mode 100644 plugins/Dbx_mmap_SA/Cryptors/RC4/src/cryptor.c create mode 100644 plugins/Dbx_mmap_SA/Cryptors/RC4/src/cryptor.cpp (limited to 'plugins/Dbx_mmap_SA') diff --git a/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_10.vcxproj b/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_10.vcxproj index 06b5358df3..bf1416a4dc 100644 --- a/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_10.vcxproj +++ b/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_10.vcxproj @@ -145,7 +145,13 @@ - + + + + + + + diff --git a/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_10.vcxproj.filters b/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_10.vcxproj.filters index bf6bc68de3..5842bc8c63 100644 --- a/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_10.vcxproj.filters +++ b/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_10.vcxproj.filters @@ -5,10 +5,26 @@ {4FC737F1-C7A5-4376-A066-2A32D752A2FF} cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + {d9ef4bec-040d-4cca-8faa-698d1448fb23} + + + {27e27fc6-b7a7-4c5c-a051-e9cad5b16d52} + - + Source Files + + + Header Files + + + + + Resource Files + + \ No newline at end of file diff --git a/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_11.vcxproj b/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_11.vcxproj index 4bcc850b4c..0de6df9c69 100644 --- a/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_11.vcxproj +++ b/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_11.vcxproj @@ -149,7 +149,13 @@ - + + + + + + + diff --git a/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_11.vcxproj.filters b/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_11.vcxproj.filters index bf6bc68de3..5842bc8c63 100644 --- a/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_11.vcxproj.filters +++ b/plugins/Dbx_mmap_SA/Cryptors/RC4/rc4_11.vcxproj.filters @@ -5,10 +5,26 @@ {4FC737F1-C7A5-4376-A066-2A32D752A2FF} cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + {d9ef4bec-040d-4cca-8faa-698d1448fb23} + + + {27e27fc6-b7a7-4c5c-a051-e9cad5b16d52} + - + Source Files + + + Header Files + + + + + Resource Files + + \ No newline at end of file diff --git a/plugins/Dbx_mmap_SA/Cryptors/RC4/res/Version.rc b/plugins/Dbx_mmap_SA/Cryptors/RC4/res/Version.rc new file mode 100644 index 0000000000..5bfbab4754 --- /dev/null +++ b/plugins/Dbx_mmap_SA/Cryptors/RC4/res/Version.rc @@ -0,0 +1,38 @@ +// Microsoft Visual C++ generated resource script. +// +#ifdef APSTUDIO_INVOKED +#error this file is not editable by Microsoft Visual C++ +#endif //APSTUDIO_INVOKED + +#include "afxres.h" +#include "..\src\version.h" + +VS_VERSION_INFO VERSIONINFO + FILEVERSION __FILEVERSION_STRING + PRODUCTVERSION __FILEVERSION_STRING + FILEFLAGSMASK 0x17L +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x4L + FILETYPE 0x0L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "000004b0" + BEGIN + VALUE "FileDescription", __DESCRIPTION + VALUE "InternalName", __PLUGIN_NAME + VALUE "LegalCopyright", __COPYRIGHT + VALUE "OriginalFilename", __FILENAME + VALUE "ProductName", __PLUGIN_NAME + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x0, 1200 + END +END diff --git a/plugins/Dbx_mmap_SA/Cryptors/RC4/src/Version.h b/plugins/Dbx_mmap_SA/Cryptors/RC4/src/Version.h new file mode 100644 index 0000000000..b3cf9b4129 --- /dev/null +++ b/plugins/Dbx_mmap_SA/Cryptors/RC4/src/Version.h @@ -0,0 +1,11 @@ +#define __MAJOR_VERSION 0 +#define __MINOR_VERSION 0 +#define __RELEASE_NUM 0 +#define __BUILD_NUM 1 + +#define __FILEVERSION_STRING __MAJOR_VERSION,__MINOR_VERSION,__RELEASE_NUM,__BUILD_NUM + +#define __PLUGIN_NAME "RC4" +#define __FILENAME "RC4.dll" +#define __DESCRIPTION "Old, very easy to crack stream cipher" +#define __COPYRIGHT "© 2012-13 Miranda NG Team" diff --git a/plugins/Dbx_mmap_SA/Cryptors/RC4/src/cryptor.c b/plugins/Dbx_mmap_SA/Cryptors/RC4/src/cryptor.c deleted file mode 100644 index 1f5f61705f..0000000000 --- a/plugins/Dbx_mmap_SA/Cryptors/RC4/src/cryptor.c +++ /dev/null @@ -1,133 +0,0 @@ -#include - -#define buf_size 1024 - -typedef struct{ - void* (__stdcall *GenerateKey)(char* key); - void (__stdcall *FreeKey)(void* key); - void (__stdcall *EncryptMem)(BYTE* data, int size, void* key); - void (__stdcall *DecryptMem)(BYTE* data, int size, void* key); - - char* Name; - char* Info; - char* Author; - char* Site; - char* Email; - - DWORD Version; - - WORD uid; -} Cryptor; - -typedef struct rc4_key -{ - BYTE state[256]; - BYTE x; - BYTE y; -} rc4_key; - -#define swap_byte(x,y) t = *(x); *(x) = *(y); *(y) = t - -void prepare_key(BYTE *key_data_ptr, size_t key_data_len, rc4_key *key) -{ - int i = 0; - BYTE t = 0; - BYTE index1 = 0; - BYTE index2 = 0; - BYTE* state = 0; - unsigned long counter = 0; - - state = &key->state[0]; - for(counter = 0; counter < 256; counter++) - state[counter] = (BYTE)counter; - key->x = 0; - key->y = 0; - index1 = 0; - index2 = 0; - for(counter = 0; counter < 256; counter++) - { - index2 = (key_data_ptr[index1] + state[counter] + index2) % 256; - swap_byte(&state[counter], &state[index2]); - index1 = (index1 + 1) % key_data_len; - } -} - -void rc4(BYTE *buffer_ptr, int buffer_len, rc4_key *key) -{ - BYTE t = 0; - BYTE x = 0; - BYTE y = 0; - BYTE* state = 0; - BYTE xorIndex = 0; - DWORD counter = 0; - BYTE old_state[256]; - - x = key->x; - y = key->y; - state = &key->state[0]; - memcpy(old_state, key->state, 256); - for(counter = 0; counter < (DWORD)buffer_len; counter++) - { - x = (x + 1) % 256; - y = (state[x] + y) % 256; - swap_byte(&state[x], &state[y]); - xorIndex = (state[x] + state[y]) % 256; - buffer_ptr[counter] ^= state[xorIndex]; - } - memcpy(key->state, old_state, 256); - //key->x = x; - //key->y = y; -} - - -void zero_fill(BYTE * pBuf, size_t bufSize) -{ - size_t i; - for(i = 0; i < bufSize; i++) - pBuf[i] = 0; -} - -void* __stdcall GenerateKey(char* pwd) -{ - rc4_key* key; - key = (rc4_key*)malloc(sizeof(rc4_key)); - zero_fill((BYTE*)key, sizeof(key)); - prepare_key(pwd, strlen(pwd), key); - return key; -} - -void __stdcall FreeKey(void* key) -{ - free(key); -} - -void __stdcall EncryptMem(BYTE* data, int size, void* key) -{ - rc4(data, size, key); -} - -void __stdcall DecryptMem(BYTE* data, int size, void* key) -{ - rc4(data, size, key); -} - -Cryptor cryptor = - { - GenerateKey, - FreeKey, - EncryptMem, - DecryptMem, - "RC4", - "Old, very easy to crack stream cipher", - "Unknown", - "http://ru.wikipedia.org/wiki/RC4", - "nomail", - 0x00000100, - 0xDEAD - }; - - -__declspec(dllexport) Cryptor* GetCryptor() -{ - return &cryptor; -} \ No newline at end of file diff --git a/plugins/Dbx_mmap_SA/Cryptors/RC4/src/cryptor.cpp b/plugins/Dbx_mmap_SA/Cryptors/RC4/src/cryptor.cpp new file mode 100644 index 0000000000..d41f3a9eb2 --- /dev/null +++ b/plugins/Dbx_mmap_SA/Cryptors/RC4/src/cryptor.cpp @@ -0,0 +1,133 @@ +#include + +#define buf_size 1024 + +typedef struct{ + void* (__stdcall *GenerateKey)(char* key); + void (__stdcall *FreeKey)(void* key); + void (__stdcall *EncryptMem)(BYTE* data, int size, void* key); + void (__stdcall *DecryptMem)(BYTE* data, int size, void* key); + + char* Name; + char* Info; + char* Author; + char* Site; + char* Email; + + DWORD Version; + + WORD uid; +} Cryptor; + +typedef struct rc4_key +{ + BYTE state[256]; + BYTE x; + BYTE y; +} rc4_key; + +#define swap_byte(x,y) t = *(x); *(x) = *(y); *(y) = t + +void prepare_key(BYTE *key_data_ptr, size_t key_data_len, rc4_key *key) +{ + int i = 0; + BYTE t = 0; + BYTE index1 = 0; + BYTE index2 = 0; + BYTE* state = 0; + unsigned long counter = 0; + + state = &key->state[0]; + for(counter = 0; counter < 256; counter++) + state[counter] = (BYTE)counter; + key->x = 0; + key->y = 0; + index1 = 0; + index2 = 0; + for(counter = 0; counter < 256; counter++) + { + index2 = (key_data_ptr[index1] + state[counter] + index2) % 256; + swap_byte(&state[counter], &state[index2]); + index1 = (index1 + 1) % key_data_len; + } +} + +void rc4(BYTE *buffer_ptr, int buffer_len, rc4_key *key) +{ + BYTE t = 0; + BYTE x = 0; + BYTE y = 0; + BYTE* state = 0; + BYTE xorIndex = 0; + DWORD counter = 0; + BYTE old_state[256]; + + x = key->x; + y = key->y; + state = &key->state[0]; + memcpy(old_state, key->state, 256); + for(counter = 0; counter < (DWORD)buffer_len; counter++) + { + x = (x + 1) % 256; + y = (state[x] + y) % 256; + swap_byte(&state[x], &state[y]); + xorIndex = (state[x] + state[y]) % 256; + buffer_ptr[counter] ^= state[xorIndex]; + } + memcpy(key->state, old_state, 256); + //key->x = x; + //key->y = y; +} + + +void zero_fill(BYTE * pBuf, size_t bufSize) +{ + size_t i; + for(i = 0; i < bufSize; i++) + pBuf[i] = 0; +} + +void* __stdcall GenerateKey(char* pwd) +{ + rc4_key* key; + key = (rc4_key*)malloc(sizeof(rc4_key)); + zero_fill((BYTE*)key, sizeof(key)); + prepare_key((BYTE*)pwd, strlen(pwd), key); + return key; +} + +void __stdcall FreeKey(void* key) +{ + free(key); +} + +void __stdcall EncryptMem(BYTE* data, int size, void* key) +{ + rc4(data, size, (rc4_key*)key); +} + +void __stdcall DecryptMem(BYTE* data, int size, void* key) +{ + rc4(data, size, (rc4_key*)key); +} + +Cryptor cryptor = + { + GenerateKey, + FreeKey, + EncryptMem, + DecryptMem, + "RC4", + "Old, very easy to crack stream cipher.", + "Unknown", + "http://ru.wikipedia.org/wiki/RC4", + "nomail", + 0x00000100, + 0xDEAD + }; + + +__declspec(dllexport) Cryptor* GetCryptor() +{ + return &cryptor; +} \ No newline at end of file -- cgit v1.2.3