#ifndef __SECURE_IM__ #define __SECURE_IM__ // режимы шифрования SecureIM #define MODE_NATIVE 0 #define MODE_PGP 1 #define MODE_GPG 2 #define MODE_RSAAES 3 #define MODE_CNT (3+1) #define MODE_RSA 4 #define SECURED 0x10 // статусы для Native и RSA/AES режимов #define STATUS_DISABLED 0 #define STATUS_ENABLED 1 #define STATUS_ALWAYSTRY 2 #define SiG_KEYR 0 #define SiG_KEY3 SiG_KEYR #define SiG_KEY4 SiG_KEYR #define SiG_ENON 1 #define SiG_ENOF 2 #define SiG_RSND 3 #define SiG_INIT 4 #define SiG_DEIN 5 #define SiG_DISA 6 #define SiG_FAKE 7 #define SiG_KEYA 8 #define SiG_KEYB 9 #define SiG_PART 10 #define SiG_SECU 11 #define SiG_SECP 12 #define SiG_PGPM 13 #define SiG_NONE -1 #define SiG_GAME -2 struct SIG { char *sig; uint8_t len; char key; }; const SIG signs[] = { {"----Key3@hell----", 17, SiG_KEYR}, {"----Key4@hell----", 17, SiG_KEYR}, {"----Secured@hell----", 20, SiG_ENON}, {"----Offline@hell----", 20, SiG_ENOF}, {"----Resend@hell----", 19, SiG_RSND}, {"----INIT@HELL----", 17, SiG_INIT}, {"----DEINIT@HELL----", 19, SiG_DEIN}, {"----DISABLED@HELL----", 21, SiG_DISA}, {"----FAKE@HELL----", 17, SiG_FAKE}, {"----KeyA@hell----", 17, SiG_KEYA}, {"----KeyB@hell----", 17, SiG_KEYB}, {"----Part@hell----", 17, SiG_PART}, {"[SECURE]", 8, SiG_SECU}, {"[$ECURE]", 8, SiG_SECP}, {"-----BEGIN PGP MESSAGE-----", 27, SiG_PGPM}, {"@@BattleShip", 12, SiG_GAME}, {"GoMoku 0.0.2.2:", 15, SiG_GAME}, {"@@GoMoku", 8, SiG_GAME}, {"pbiChess:", 9, SiG_GAME}, {"pbiReverse:", 11, SiG_GAME}, {"pbiCorners:", 11, SiG_GAME}, {"pbiCheckersInt:", 15, SiG_GAME}, {"pbiCheckersRus:", 15, SiG_GAME}, {"pbiCheckersPool:", 16, SiG_GAME}, {0} }; #define SIG_KEY3 signs[ 0].sig #define SIG_KEY4 signs[ 1].sig #define SIG_ENON signs[ 2].sig #define SIG_ENOF signs[ 3].sig #define SIG_RSND signs[ 4].sig #define SIG_INIT signs[ 5].sig #define SIG_DEIN signs[ 6].sig #define SIG_DISA signs[ 7].sig #define SIG_FAKE signs[ 8].sig #define SIG_KEYA signs[ 9].sig #define SIG_KEYB signs[10].sig #define SIG_PART signs[11].sig #define SIG_SECU signs[12].sig #define SIG_SECP signs[13].sig #define LEN_KEY3 signs[ 0].len #define LEN_KEY4 signs[ 1].len #define LEN_ENON signs[ 2].len #define LEN_ENOF signs[ 3].len #define LEN_RSND signs[ 4].len #define LEN_INIT signs[ 5].len #define LEN_DEIN signs[ 6].len #define LEN_DISA signs[ 7].len #define LEN_FAKE signs[ 8].len #define LEN_KEYA signs[ 9].len #define LEN_KEYB signs[10].len #define LEN_PART signs[11].len #define LEN_SECU signs[12].len #define LEN_SECP signs[13].len #define TBL_IEC 0x01 #define TBL_ICO 0x02 #define TBL_POP 0x03 #define IEC_CL_DIS 0x00 #define IEC_CL_EST 0x01 #define IEC_CNT (0x01+1) #define ICO_CM_DIS 0x00 #define ICO_CM_EST 0x01 #define ICO_MW_DIS 0x02 #define ICO_MW_EST 0x03 #define ICO_ST_DIS 0x04 #define ICO_ST_ENA 0x05 #define ICO_ST_TRY 0x06 #define ICO_OV_NAT 0x07 #define ICO_OV_PGP 0x08 #define ICO_OV_GPG 0x09 #define ICO_OV_RSA 0x0A #define ICO_CNT (0x0A+1) #define POP_PU_DIS 0x00 #define POP_PU_EST 0x01 #define POP_PU_PRC 0x02 #define POP_PU_MSR 0x03 #define POP_PU_MSS 0x04 #define POP_CNT (0x04+1) #define ADV_CNT 8 #define ALL_CNT (IEC_CNT+ICO_CNT+POP_CNT) #endif