⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 evadefines.h

📁 linux下的eva源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
/*************************************************************************** *   Copyright (C) 2004 by yunfan                                          * *   yunfan_zg@163.com                                                     * *                                                                         * *   This program is free software; you can redistribute it and/or modify  * *   it under the terms of the GNU General Public License as published by  * *   the Free Software Foundation; either version 2 of the License, or     * *   (at your option) any later version.                                   * *                                                                         * *   This program is distributed in the hope that it will be useful,       * *   but WITHOUT ANY WARRANTY; without even the implied warranty of        * *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         * *   GNU General Public License for more details.                          * *                                                                         * *   You should have received a copy of the GNU General Public License     * *   along with this program; if not, write to the                         * *   Free Software Foundation, Inc.,                                       * *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             * ***************************************************************************/ #ifndef LIBEVADEFINES_H#define LIBEVADEFINES_H/** add a type define for uint in case that some platform dose not has type uint */typedef unsigned int uint;/** Visual Studio .NET 2002/2003 Additional Definitions */#ifdef WIN32#pragma warning(disable: 4309 4800)typedef unsigned char uint8_t;#include <malloc.h>#endif/** * define all constants for eva use *//** the unknown part in login request appended data, after this, all 0x00s*/static const unsigned char login_appended_2_72[71]= {			0x01, 0x2e, 0x2c, 0x69,  0xb4, 0x00, 0x10, 0x6b,			0xc3, 0xe9, 0x92, 0xc3,  0x50, 0x7a, 0x3a, 0x77,			0x4d, 0xad, 0x69 , 0x0c, 0x04, 0xc3, 0x5f,  0x00,			0x00, 0x00, 0x00, 0x00,  0x01, 0x00, 0x00, 0x00,			0x01, 0x00, 0x00, 0x00,  0x00, 0x00, 0x00, 0x00,			0x00, 0x00, 0x00, 0x00,  0x00, 0x00, 0x00, 0x00,			0x02, 0xc5, 0x17, 0xea,  0x05, 0x00, 0x10, 0x5d,			0xef, 0x8a, 0xfe,   0xe6,  0x10, 0x37, 0xf8,  0xff,			0xcc, 0x52, 0x58, 0x62,  0x42, 0xa0, 0x91			};/**  eva, URL of applying free qq acount */static const char QQ_APPLY_FREE_ACOUNT_URL[] =        "http://jump.qq.com/clienturl_239?ADUIN=0&ADSESSION=0&ADTAG=CLIENT.QQ.1595_LoginWindow.0";static const char QQ_FORGET_PASSWORD_URL[] =        "http://dna.qq.com/cgi-bin/console_forgetPW?reLogin=true&ADUIN=0&ADSESSION=0&ADTAG=CLIENT.QQ.1595_LoginWindow.0";static const char QQ_FORGET_PW_URL[] =        "http://service.tencent.com/reg/getpassword.shtml?ADUIN=0&ADSESSION=0&ADTAG=CLIENT.QQ.1595_LoginWindow.0";static const char QQ_PW_PROTECT_URL[] =        "http://jump.qq.com/clienturl_8?source=8&ADUIN=0&ADSESSION=0&ADTAG=CLIENT.QQ.1595_LoginWindow.0";/// all version numbers takes 2 bytes( short)/**  client GB QQ2000c build 630 */#define QQ_CLIENT_062E = 0x062E/** client En QQ2000c build 305 */#define QQ_CLIENT_072E   0x072E/** client En QQ2000c build 630 */#define QQ_CLIENT_0801   0x0801/** client Gb QQ2003c build 0808 */#define QQ_CLIENT_0A1D   0x0A1D/** client Gb QQ2003c build 0925 */#define QQ_CLIENT_0B07   0x0B07/** client GB QQ2003iii build 0117 */#define QQ_CLIENT_0B2F   0x0B2F/** GB QQ2003iii build 0304 (offical release) */#define QQ_CLIENT_0B35   0x0B35/** QQ20003  */#define QQ_CLIENT_0B37   0x0B37/** QQ2004 */#define QQ_CLIENT_0C0B   0x0C0B/** QQ2004 preview*/#define QQ_CLIENT_0C0D   0x0C0D/** QQ2004 */#define QQ_CLIENT_0C21   0x0C21/** QQ2004II */#define QQ_CLIENT_0C49   0x0C49/** QQ2005 beta1 */#define QQ_CLIENT_0D05   0x0D05/** QQ2005 beta2 */#define QQ_CLIENT_0D51   0x0D51/** QQ2005 */#define QQ_CLIENT_0D61   0x0D61/** QQ2005 ? */#define QQ_CLIENT_0E1B   0x0E1B/** ? */#define QQ_CLIENT_05A5   0x05A5/** QQ2006 Spring Festival */#define QQ_CLIENT_05F1   0x0F15/** QQ2006 Beta 3  */#define QQ_CLIENT_0F4B   0x0F4B#define QQ_LOGIN_DATA_0F4B_LENGTH         456#define QQ_LOGIN_RESERVE_0F4B_LENGTH    0x13#define QQ_LOGIN_APPEND_0F4B_LENGTH     0x0140/** QQ2006 standard */#define QQ_CLIENT_0F5F   0x0F5F#define QQ_LOGIN_DATA_0F5F_LENGTH         449#define QQ_LOGIN_RESERVE_0F5F_LENGTH    0x13#define QQ_LOGIN_APPEND_0F5F_LENGTH     0x0140/** a random key used for login request packet   Bring Good luck to anyone who uses Eva, that's what 66   means. :)*/static const unsigned char QQ_Client_Key[16] = {			0x66, 0x66,   0x66,  0x66, 0x66, 0x66, 0x66, 0x66,			0x66, 0x66,   0x66,  0x66, 0x66, 0x66, 0x66, 0x66,			}; static const unsigned char QQ_Hash_0F4B[16] = {			0x3f,   0xf2,   0x31,  0x72,  0x30, 0xc8, 0x95, 0x7d,			0xd8,  0x6a,  0x49,  0x0d,  0xf9,  0x8e, 0x44, 0xea			};static const unsigned char QQ_Hash_0F5F[16] = {			0x41,  0xd1,  0x18,  0xac,  0x14,  0x78,  0x58,  0xf1,			0xd0,  0x81,  0x4d,  0x7d,  0x7d,  0x7b,  0xd9,  0x1f			};static const unsigned char Computer_UUID_0F4B[16] = {			0x88, 0xef, 0x95, 0xa6 , 0xd4, 0x04, 0xeb, 0x49,			0x9f, 0x56, 0xb5, 0x5f  , 0x2e, 0x3d, 0xac, 0x6a			};static const unsigned char Computer_UUID_0F5F[16] = {			0x00, 0xe3, 0xae, 0x4c, 0xd4, 0xff, 0x4b, 0x88,			0x42, 0xb5, 0x66, 0xc5, 0x3a, 0x0d, 0xb6, 0x6f			};/** QQ server  number*/#define QQ_SERVER_0100   0x0100/** QQ Token server number*/#define QQ_SERVER_0000   0x0000/**  default client version*/#define QQ_CLIENT_VERSION   QQ_CLIENT_0F5F/** default qq.exe md5 hash code */#define QQ_Hash   QQ_Hash_0F5F/** default computer UUID */#define Computer_UUID      Computer_UUID_0F5F/** default qq reserved length for login request */#define QQ_LOGIN_RESERVED_LENGTH   QQ_LOGIN_RESERVE_0F5F_LENGTH/** QQ login data  length */#define QQ_LOGIN_DATA_OLD_LENGTH     416/** QQ default login request packet length */#define QQ_LOGIN_DATA_LENGTH          QQ_LOGIN_DATA_0F5F_LENGTH/** QQ default login request last trunck */#define QQ_LOGIN_APPEND_LENGTH      QQ_LOGIN_APPEND_0F5F_LENGTH/**  qq header tag, unsigned char ( 1 byte) */#define QQ_PACKET_TAG  0x02/** QQ tail byte*/#define QQ_PACKET_TAIL  0x03/** eva system message types, unsigned short ( 2 bytes) */#define SYSTEM_MESSAGE_NORMAL  0x0001/** udp  */#define QQ_LOGIN_UDP  0/** tcp */#define QQ_LOGIN_TCP  1/** QQ UDP packet header length*/#define QQ_UDP_HEADER_LENGTH  7/** QQ TCP packet header length */#define QQ_TCP_HEADER_LENGTH  9/** QQ packet tail length*/#define QQ_TAIL_LENGTH  1/**  the number of send times*/ #define QQ_ACK_PACKET_SEND_TIME  4/** QQ packet maximum size*/#define MAX_PACKET_SIZE  65535/** the maximum bytes to send at once*/#define MAX_SEND_IM_SIZE  400/**  QQ key length*/#define QQ_KEY_LENGTH  16/** QQ default encoding, short ( 2 bytes) */#define QQ_IM_ENCODING_GB  0x8602/** packet queue time out */#define QQ_SENDQUEUE_TIMEOUT  5000/** the times of maximum re-send a packet */#define QQ_RESEND_MAX  5/** Keep Alive time interval   unit: ms */#define QQ_KEEP_ALIVE_INTERVAL  60000#define QQ_MAX_GROUP_NAME_BYTE  16#define QQ_NAME_LENGTH_MAX          250#define QQ_MSG_IM_MAX          1500#define QQ_CONTACT_FIELDS    37#define QQ_MEMO_FIELDS         7/// unsigned char ( 1 bytes)#define QQ_LOGIN_MODE_NORMAL  0x0A#define QQ_LOGIN_MODE_INVISIBLE  0x28#define QQ_FRIEND_GENDER_GG   0x00#define QQ_FRIEND_GENDER_MM  0x01#define QQ_FRIEND_GENDER_UNKNOWN  0xFF#define QQ_FRIEND_FLAG_QQ_MEMBER  0x01#define QQ_FRIEND_FLAG_MOBILE           0x10#define QQ_FRIEND_FLAG_BIND_MOBILE  0x20// should we change the status into Hex expression?#define QQ_FRIEND_STATUS_ONLINE     10#define QQ_FRIEND_STATUS_OFFLINE   20#define QQ_FRIEND_STATUS_LEAVE      30#define QQ_FRIEND_STATUS_INVISIBLE  40// int ( 4 bytes)#define QQ_MISC_STATUS_HAVING_VIDEO  0x00000001/// unsigned char ( 1 bytes)#define QQ_REQUEST_LOGIN_TOKEN_REPLY_OK  0x00#define QQ_LOGIN_REPLY_OK                              0x00#define QQ_LOGIN_REPLY_REDIRECT                    0x01#define QQ_LOGIN_REPLY_PWD_ERROR                0x05#define QQ_LOGIN_REPLY_NEED_REACTIVATE      0x06#define QQ_LOGIN_REPLY_REDIRECT_EX               0x0A// eva defines this#define QQ_LOGIN_REPLY_MISC_ERROR                0xFF#define QQ_UPLOAD_GROUP_FRIEND_OK     0x00#define QQ_UPLOAD_FRIEND_REMARK_OK  0x00#define QQ_CHANGE_STATUS_REPLY_OK    0x30#define QQ_SEND_IM_REPLY_OK   0x00#define QQ_ADD_FRIEND_AUTH_REPLY_OK  0x30#define QQ_DELETE_FRIEND_REPLY_OK       0x00#define QQ_DELETE_ME_REPLY_OK              0x00#define QQ_REQUEST_KEY_REPLY_OK          0x00// unsigned short#define QQ_FRIEND_LIST_POSITION_START  0x0000#define QQ_FRIEND_LIST_POSITION_END  0xFFFF// unsigned char#define QQ_FRIEND_ONLINE_LIST_POSITION_START  0x00#define QQ_FRIEND_ONLINE_LIST_POSITION_END     0xFF#define QQ_FRIEND_LIST_UNSORTED   0x00#define QQ_FRIEND_LIST_SORTED       0x01/* QQ commands, unsigned short( 2 bytes) */#define QQ_CMD_LOGOUT                             0x0001#define QQ_CMD_KEEP_ALIVE                         0x0002#define QQ_CMD_MODIFY_INFO                        0x0004#define QQ_CMD_SEARCH_USER                        0x0005

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -