1152
|
1 /* -*- Mode: C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
2 #ifndef _UDP_H_
|
|
3 #define _UDP_H_
|
|
4
|
|
5 #ifdef HAVE_CONFIG_H
|
|
6 #include <config.h>
|
|
7 #endif
|
|
8
|
|
9 #include "icq.h"
|
|
10 #include "util.h"
|
|
11 #include "icqpacket.h"
|
|
12
|
|
13 #define UDP_CMD_ACK 0x000A
|
|
14 #define UDP_CMD_SEND_THRU_SRV 0x010E
|
|
15 #define UDP_CMD_LOGIN 0x03E8
|
|
16 #define UDP_CMD_CONT_LIST 0x0406
|
|
17 #define UDP_CMD_SEARCH_UIN 0x041A
|
|
18 #define UDP_CMD_SEARCH_USER 0x0424
|
|
19 #define UDP_CMD_KEEP_ALIVE 0x042E
|
|
20 #define UDP_CMD_KEEP_ALIVE2 0x051E
|
|
21 #define UDP_CMD_SEND_TEXT_CODE 0x0438
|
|
22 #define UDP_CMD_LOGIN_1 0x044C
|
|
23 #define UDP_CMD_INFO_REQ 0x0460
|
|
24 #define UDP_CMD_EXT_INFO_REQ 0x046A
|
|
25 #define UDP_CMD_CHANGE_PW 0x049C
|
|
26 #define UDP_CMD_STATUS_CHANGE 0x04D8
|
|
27 #define UDP_CMD_LOGIN_2 0x0528
|
|
28 #define UDP_CMD_UPDATE_INFO 0x050A
|
|
29 #define UDP_CMD_UPDATE_AUTH 0x0514
|
|
30 #define UDP_CMD_UPDATE_EXT_INFO 0x04B0
|
|
31 #define UDP_CMD_ADD_TO_LIST 0x053C
|
|
32 #define UDP_CMD_REQ_ADD_LIST 0x0456
|
|
33 #define UDP_CMD_QUERY_SERVERS 0x04BA
|
|
34 #define UDP_CMD_QUERY_ADDONS 0x04C4
|
|
35 #define UDP_CMD_NEW_USER_1 0x04EC
|
|
36 #define UDP_CMD_NEW_USER_INFO 0x04A6
|
|
37 #define UDP_CMD_ACK_MESSAGES 0x0442
|
|
38 #define UDP_CMD_MSG_TO_NEW_USER 0x0456
|
|
39 #define UDP_CMD_REG_NEW_USER 0x03FC
|
|
40 #define UDP_CMD_VIS_LIST 0x06AE
|
|
41 #define UDP_CMD_INVIS_LIST 0x06A4
|
|
42 #define UDP_CMD_META_USER 0x064A
|
|
43 #define UDP_CMD_RAND_SEARCH 0x056E
|
|
44 #define UDP_CMD_RAND_SET 0x0564
|
|
45 #define UDP_CMD_REVERSE_TCP_CONN 0x015E
|
|
46
|
|
47 #define UDP_SRV_ACK 0x000A
|
|
48 #define UDP_SRV_LOGIN_REPLY 0x005A
|
|
49 #define UDP_SRV_USER_ONLINE 0x006E
|
|
50 #define UDP_SRV_USER_OFFLINE 0x0078
|
|
51 #define UDP_SRV_USER_FOUND 0x008C
|
|
52 #define UDP_SRV_OFFLINE_MESSAGE 0x00DC
|
|
53 #define UDP_SRV_END_OF_SEARCH 0x00A0
|
|
54 #define UDP_SRV_INFO_REPLY 0x0118
|
|
55 #define UDP_SRV_EXT_INFO_REPLY 0x0122
|
|
56 #define UDP_SRV_STATUS_UPDATE 0x01A4
|
|
57 #define UDP_SRV_X1 0x021C
|
|
58 #define UDP_SRV_X2 0x00E6
|
|
59 #define UDP_SRV_UPDATE 0x01E0
|
|
60 #define UDP_SRV_UPDATE_EXT 0x00C8
|
|
61 #define UDP_SRV_NEW_UIN 0x0046
|
|
62 #define UDP_SRV_NEW_USER 0x00B4
|
|
63 #define UDP_SRV_QUERY 0x0082
|
|
64 #define UDP_SRV_SYSTEM_MESSAGE 0x01C2
|
|
65 #define UDP_SRV_ONLINE_MESSAGE 0x0104
|
|
66 #define UDP_SRV_GO_AWAY 0x00F0
|
|
67 #define UDP_SRV_TRY_AGAIN 0x00FA
|
|
68 #define UDP_SRV_FORCE_DISCONNECT 0x0028
|
|
69 #define UDP_SRV_MULTI_PACKET 0x0212
|
|
70 #define UDP_SRV_WRONG_PASSWORD 0x0064
|
|
71 #define UDP_SRV_INVALID_UIN 0x012C
|
|
72 #define UDP_SRV_META_USER 0x03DE
|
|
73 #define UDP_SRV_RAND_USER 0x024E
|
|
74 #define UDP_SRV_AUTH_UPDATE 0x01F4
|
|
75
|
|
76 #define META_CMD_SET_INFO 1000
|
|
77 #define META_CMD_SET_HOMEPAGE 1020
|
|
78 #define META_CMD_SET_ABOUT 1030
|
|
79 #define META_CMD_SET_SECURE 1060
|
|
80 #define META_CMD_SET_PASS 1070
|
|
81 #define META_CMD_REQ_INFO 1200
|
|
82 #define META_SRV_RES_INFO 100
|
|
83 #define META_SRV_RES_HOMEPAGE 120
|
|
84 #define META_SRV_RES_ABOUT 130
|
|
85 #define META_SRV_RES_SECURE 160
|
|
86 #define META_SRV_RES_PASS 170
|
|
87 #define META_SRV_USER_INFO 200
|
|
88 #define META_SRV_USER_WORK 210
|
|
89 #define META_SRV_USER_MORE 220
|
|
90 #define META_SRV_USER_ABOUT 230
|
|
91 #define META_SRV_USER_INTERESTS 240
|
|
92 #define META_SRV_USER_AFFILIATIONS 250
|
|
93 #define META_SRV_USER_HPCATEGORY 270
|
|
94 #define META_SRV_USER_FOUND 410
|
|
95
|
|
96 #define META_SRV_SUCCESS 10
|
|
97 #define META_SRV_FAILURE 50
|
|
98
|
|
99 #define TYPE_MSG 0x0001
|
|
100 #define TYPE_CHAT 0x0002
|
|
101 #define TYPE_FILE 0x0003
|
|
102 #define TYPE_URL 0x0004
|
|
103 #define TYPE_AUTH_REQ 0x0006
|
|
104 #define TYPE_AUTH 0x0008
|
|
105 #define TYPE_ADDED 0x000C
|
|
106 #define TYPE_WEBPAGER 0x000D
|
|
107 #define TYPE_EXPRESS 0x000E
|
|
108 #define TYPE_CONTACT 0x0013
|
|
109 #define TYPE_MASS_MASK 0x8000
|
|
110
|
|
111 #define LOGIN_X1_DEF 0x00000098
|
|
112 /*#define LOGIN_X1_DEF 0x000000D5*/
|
|
113 #define LOGIN_X3_DEF 0x00000003
|
|
114 /*#define LOGIN_X3_DEF 0x00000006*/
|
|
115 #define LOGIN_X4_DEF 0x00000000
|
|
116 #define LOGIN_X5_DEF 0x00980010
|
|
117 /*#define LOGIN_X5_DEF 0x00D50008*/
|
|
118 #define LOGIN_X6_DEF 0x00000050
|
|
119 #define LOGIN_X7_DEF 0x00000003
|
|
120 #define LOGIN_X8_DEF 0x00000000
|
|
121
|
|
122 #define LOGIN_SNDONLY_TCP 0x02
|
|
123 #define LOGIN_SNDRCV_TCP 0x04
|
|
124 #define LOGIN_NO_TCP 0x06
|
|
125
|
|
126 void icq_SendGotMessages(ICQLINK *link);
|
|
127 void icq_SendLogin1(ICQLINK *link);
|
|
128 void icq_StatusUpdate(ICQLINK *link, icq_Packet*);
|
|
129 void icq_AckSrv(ICQLINK *link, int seq);
|
|
130 void icq_HandleUserOffline(ICQLINK *link, icq_Packet*);
|
|
131 void icq_HandleUserOnline(ICQLINK *link, icq_Packet*);
|
|
132 void icq_DoMsg(ICQLINK *link, DWORD type, WORD len, char *data, DWORD uin,
|
|
133 BYTE hour, BYTE minute, BYTE day, BYTE month, WORD year);
|
|
134 int icq_UDPSockWriteDirect(ICQLINK *link, icq_Packet*);
|
|
135 int icq_UDPSockWrite(ICQLINK *link, icq_Packet*);
|
|
136 int icq_UDPSockRead(ICQLINK *link, icq_Packet*);
|
|
137 void icq_ServerResponse(ICQLINK *link, icq_Packet*);
|
|
138 void icq_HandleMultiPacket(ICQLINK *link, icq_Packet*);
|
|
139
|
|
140 void icq_UDPAck(ICQLINK *link, int seq);
|
|
141 WORD icq_UDPSendMessage(ICQLINK *link, DWORD uin, const char *text);
|
|
142 WORD icq_UDPSendURL(ICQLINK *link, DWORD uin, const char *url, const char *descr);
|
|
143
|
|
144 #endif /* _UDP_H_ */
|