Thu, 12 Jun 2003 22:19:07 +0000
[gaim-migrate @ 6273]
Another reason not to use CVS.
This saves your buddy icons to the OSCAR servers (I hope). It's not fully
tested and it may screw things up, but I wanted to get it in CVS so other people
can try to break this, and KingAnt can review my work (that libfaim wizard that
he is.) Don't use CVS.
I'd like to thank Christian Hammond, for his work on the account and prpl APIs
that made it so easy to add the hook into buddy icon changing. I'd like to thank
Mark Doliner for laying most of the groundwork and for his kind words of encouragement.
I'd like to thank myself for making the buddy icon selector real sexy-like. I'd like
to thank the Lord almighty for giving me the strength to do this.
I promised myself I wouldn't cry. I never imagined I'd be committing this.
| 2086 | 1 | /* |
| 2 | * Main libfaim header. Must be included in client for prototypes/macros. | |
| 3 | * | |
| 4 | * "come on, i turned a chick lesbian; i think this is the hackish equivalent" | |
|
4194
dbe45b0c38fa
[gaim-migrate @ 4425]
Mark Doliner <markdoliner@pidgin.im>
parents:
4173
diff
changeset
|
5 | * -- Josh Myer |
| 2086 | 6 | * |
| 7 | */ | |
| 8 | ||
| 9 | #ifndef __AIM_H__ | |
| 10 | #define __AIM_H__ | |
| 11 | ||
| 12 | #define FAIM_VERSION_MAJOR 0 | |
| 13 | #define FAIM_VERSION_MINOR 99 | |
| 14 | #define FAIM_VERSION_MINORMINOR 1 | |
| 15 | ||
| 16 | #include <faimconfig.h> | |
| 17 | #include <aim_cbtypes.h> | |
| 18 | ||
| 19 | #include <stdio.h> | |
| 20 | #include <string.h> | |
| 21 | #include <fcntl.h> | |
| 22 | #include <sys/types.h> | |
| 23 | #include <stdlib.h> | |
| 24 | #include <stdarg.h> | |
| 25 | #include <errno.h> | |
| 26 | #include <time.h> | |
| 27 | ||
| 3630 | 28 | #ifndef _WIN32 |
| 2086 | 29 | #include <sys/time.h> |
| 30 | #include <unistd.h> | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
31 | #include <netdb.h> |
| 2086 | 32 | #include <netinet/in.h> |
| 33 | #include <sys/socket.h> | |
| 3630 | 34 | #else |
| 35 | #include <winsock.h> | |
| 2086 | 36 | #endif |
| 37 | ||
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
38 | /* XXX adjust these based on autoconf-detected platform */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
39 | typedef unsigned char fu8_t; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
40 | typedef unsigned short fu16_t; |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
41 | typedef unsigned int fu32_t; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
42 | typedef fu32_t aim_snacid_t; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
43 | typedef fu16_t flap_seqnum_t; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
44 | |
| 2086 | 45 | #if defined(mach) && defined(__APPLE__) |
| 46 | #define gethostbyname(x) gethostbyname2(x, AF_INET) | |
| 47 | #endif | |
| 48 | ||
| 49 | #if defined(_WIN32) && !defined(WIN32_STATIC) | |
| 50 | /* | |
| 51 | * For a win32 DLL, we define WIN32_INDLL if this file | |
| 52 | * is included while compiling the DLL. If its not | |
| 53 | * defined (its included in a client app), the symbols | |
| 54 | * will be imported instead of exported. | |
| 55 | */ | |
| 56 | #ifdef WIN32_INDLL | |
| 57 | #define faim_export __declspec(dllexport) | |
| 58 | #else | |
| 59 | #define faim_export __declspec(dllimport) | |
| 60 | #endif /* WIN32_INDLL */ | |
| 61 | #define faim_internal | |
| 62 | #else | |
| 63 | /* | |
| 64 | * Nothing normally needed for unix... | |
| 65 | */ | |
| 66 | #define faim_export | |
| 67 | #define faim_internal | |
| 68 | #endif | |
| 69 | ||
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
70 | #ifndef TRUE |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
71 | #define TRUE 1 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
72 | #define FALSE 0 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
73 | #endif |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
74 | |
| 2086 | 75 | /* |
| 76 | * Current Maximum Length for Screen Names (not including NULL) | |
| 77 | * | |
| 78 | * Currently only names up to 16 characters can be registered | |
| 79 | * however it is aparently legal for them to be larger. | |
| 80 | */ | |
| 4908 | 81 | #define MAXSNLEN 97 |
| 2086 | 82 | |
| 83 | /* | |
| 84 | * Current Maximum Length for Instant Messages | |
| 85 | * | |
| 86 | * This was found basically by experiment, but not wholly | |
| 87 | * accurate experiment. It should not be regarded | |
| 88 | * as completely correct. But its a decent approximation. | |
| 89 | * | |
| 90 | * Note that although we can send this much, its impossible | |
| 91 | * for WinAIM clients (up through the latest (4.0.1957)) to | |
| 92 | * send any more than 1kb. Amaze all your windows friends | |
| 93 | * with utterly oversized instant messages! | |
| 94 | * | |
| 95 | * XXX: the real limit is the total SNAC size at 8192. Fix this. | |
| 96 | * | |
| 97 | */ | |
| 98 | #define MAXMSGLEN 7987 | |
| 99 | ||
| 100 | /* | |
| 101 | * Maximum size of a Buddy Icon. | |
| 102 | */ | |
| 103 | #define MAXICONLEN 7168 | |
| 104 | #define AIM_ICONIDENT "AVT1picture.id" | |
| 105 | ||
| 106 | /* | |
| 107 | * Current Maximum Length for Chat Room Messages | |
| 108 | * | |
| 109 | * This is actually defined by the protocol to be | |
| 110 | * dynamic, but I have yet to see due cause to | |
| 111 | * define it dynamically here. Maybe later. | |
| 112 | * | |
| 113 | */ | |
| 114 | #define MAXCHATMSGLEN 512 | |
| 115 | ||
|
5345
665b4fdd094a
[gaim-migrate @ 5721]
Mark Doliner <markdoliner@pidgin.im>
parents:
5146
diff
changeset
|
116 | /** |
|
665b4fdd094a
[gaim-migrate @ 5721]
Mark Doliner <markdoliner@pidgin.im>
parents:
5146
diff
changeset
|
117 | * Maximum length for the password of an ICQ account |
|
665b4fdd094a
[gaim-migrate @ 5721]
Mark Doliner <markdoliner@pidgin.im>
parents:
5146
diff
changeset
|
118 | */ |
|
665b4fdd094a
[gaim-migrate @ 5721]
Mark Doliner <markdoliner@pidgin.im>
parents:
5146
diff
changeset
|
119 | #define MAXICQPASSLEN 8 |
|
665b4fdd094a
[gaim-migrate @ 5721]
Mark Doliner <markdoliner@pidgin.im>
parents:
5146
diff
changeset
|
120 | |
| 2086 | 121 | #define AIM_MD5_STRING "AOL Instant Messenger (SM)" |
| 122 | ||
| 123 | /* | |
|
2821
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
124 | * Client info. Filled in by the client and passed in to |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
125 | * aim_send_login(). The information ends up getting passed to OSCAR |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
126 | * through the initial login command. |
| 2086 | 127 | * |
| 128 | */ | |
| 129 | struct client_info_s { | |
|
2821
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
130 | const char *clientstring; |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
131 | fu16_t clientid; |
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
132 | fu16_t major; |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
133 | fu16_t minor; |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
134 | fu16_t point; |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
135 | fu16_t build; |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
136 | fu32_t distrib; |
|
2821
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
137 | const char *country; /* two-letter abbrev */ |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
138 | const char *lang; /* two-letter abbrev */ |
| 2086 | 139 | }; |
| 140 | ||
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
141 | /* Needs to be checked */ |
|
3458
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
142 | #define CLIENTINFO_AIM_3_5_1670 { \ |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
143 | "AOL Instant Messenger (SM), version 3.5.1670/WIN32", \ |
|
2821
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
144 | 0x0004, \ |
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
145 | 0x0003, 0x0005, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
146 | 0x0000, 0x0686, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
147 | 0x0000002a, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
148 | "us", "en", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
149 | } |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
150 | |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
151 | /* Needs to be checked */ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
152 | /* Latest winaim without ssi */ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
153 | #define CLIENTINFO_AIM_4_1_2010 { \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
154 | "AOL Instant Messenger (SM), version 4.1.2010/WIN32", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
155 | 0x0004, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
156 | 0x0004, 0x0001, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
157 | 0x0000, 0x07da, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
158 | 0x0000004b, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
159 | "us", "en", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
160 | } |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
161 | |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
162 | /* Needs to be checked */ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
163 | #define CLIENTINFO_AIM_4_3_2188 { \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
164 | "AOL Instant Messenger (SM), version 4.3.2188/WIN32", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
165 | 0x0109, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
166 | 0x0400, 0x0003, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
167 | 0x0000, 0x088c, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
168 | 0x00000086, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
169 | "us", "en", \ |
| 2086 | 170 | } |
| 171 | ||
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
172 | /* Needs to be checked */ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
173 | #define CLIENTINFO_AIM_4_8_2540 { \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
174 | "AOL Instant Messenger (SM), version 4.8.2540/WIN32", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
175 | 0x0109, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
176 | 0x0004, 0x0008, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
177 | 0x0000, 0x09ec, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
178 | 0x000000af, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
179 | "us", "en", \ |
| 2086 | 180 | } |
| 181 | ||
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
182 | /* Needs to be checked */ |
|
3595
28da7ae040a5
[gaim-migrate @ 3697]
Mark Doliner <markdoliner@pidgin.im>
parents:
3466
diff
changeset
|
183 | #define CLIENTINFO_AIM_5_0_2938 { \ |
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
184 | "AOL Instant Messenger, version 5.0.2938/WIN32", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
185 | 0x0109, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
186 | 0x0005, 0x0000, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
187 | 0x0000, 0x0b7a, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
188 | 0x00000000, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
189 | "us", "en", \ |
|
3595
28da7ae040a5
[gaim-migrate @ 3697]
Mark Doliner <markdoliner@pidgin.im>
parents:
3466
diff
changeset
|
190 | } |
|
28da7ae040a5
[gaim-migrate @ 3697]
Mark Doliner <markdoliner@pidgin.im>
parents:
3466
diff
changeset
|
191 | |
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
192 | #define CLIENTINFO_AIM_5_1_3036 { \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
193 | "AOL Instant Messenger, version 5.1.3036/WIN32", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
194 | 0x0109, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
195 | 0x0005, 0x0001, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
196 | 0x0000, 0x0bdc, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
197 | 0x000000d2, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
198 | "us", "en", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
199 | } |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
200 | |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
201 | /* Needs to be checked */ |
|
3458
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
202 | #define CLIENTINFO_ICQ_4_65_3281 { \ |
|
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
203 | "ICQ Inc. - Product of ICQ (TM) 2000b.4.65.1.3281.85", \ |
|
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
204 | 0x010a, \ |
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
205 | 0x0004, 0x0041, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
206 | 0x0001, 0x0cd1, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
207 | 0x00000055, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
208 | "us", "en", \ |
|
3458
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
209 | } |
|
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
210 | |
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
211 | /* Needs to be checked */ |
|
3458
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
212 | #define CLIENTINFO_ICQ_5_34_3728 { \ |
|
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
213 | "ICQ Inc. - Product of ICQ (TM).2002a.5.34.1.3728.85", \ |
|
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
214 | 0x010a, \ |
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
215 | 0x0005, 0x0022, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
216 | 0x0001, 0x0e8f, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
217 | 0x00000055, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
218 | "us", "en", \ |
|
3458
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
219 | } |
|
6140a920776b
[gaim-migrate @ 3506]
Mark Doliner <markdoliner@pidgin.im>
parents:
3348
diff
changeset
|
220 | |
|
4071
f0c425b22b92
[gaim-migrate @ 4283]
Mark Doliner <markdoliner@pidgin.im>
parents:
4070
diff
changeset
|
221 | #define CLIENTINFO_ICQ_5_45_3777 { \ |
|
4070
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
222 | "ICQ Inc. - Product of ICQ (TM).2003a.5.45.1.3777.85", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
223 | 0x010a, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
224 | 0x0005, 0x002d, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
225 | 0x0001, 0x0ec1, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
226 | 0x00000055, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
227 | "us", "en", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
228 | } |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
229 | |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
230 | #define CLIENTINFO_ICQBasic_14_3_1068 { \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
231 | "ICQBasic", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
232 | 0x010a, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
233 | 0x0014, 0x0003, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
234 | 0x0000, 0x042c, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
235 | 0x0000043d, \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
236 | "us", "en", \ |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
237 | } |
|
f39a1ed83c26
[gaim-migrate @ 4282]
Mark Doliner <markdoliner@pidgin.im>
parents:
3952
diff
changeset
|
238 | |
|
4317
f3f135811a70
[gaim-migrate @ 4571]
Mark Doliner <markdoliner@pidgin.im>
parents:
4293
diff
changeset
|
239 | #define CLIENTINFO_Netscape_7_0_1 { \ |
|
f3f135811a70
[gaim-migrate @ 4571]
Mark Doliner <markdoliner@pidgin.im>
parents:
4293
diff
changeset
|
240 | "Netscape 2000 an approved user of AOL Instant Messenger (SM)", \ |
|
f3f135811a70
[gaim-migrate @ 4571]
Mark Doliner <markdoliner@pidgin.im>
parents:
4293
diff
changeset
|
241 | 0x1d0d, \ |
|
f3f135811a70
[gaim-migrate @ 4571]
Mark Doliner <markdoliner@pidgin.im>
parents:
4293
diff
changeset
|
242 | 0x0007, 0x0000, \ |
|
f3f135811a70
[gaim-migrate @ 4571]
Mark Doliner <markdoliner@pidgin.im>
parents:
4293
diff
changeset
|
243 | 0x0001, 0x0000, \ |
|
f3f135811a70
[gaim-migrate @ 4571]
Mark Doliner <markdoliner@pidgin.im>
parents:
4293
diff
changeset
|
244 | 0x00000058, \ |
|
f3f135811a70
[gaim-migrate @ 4571]
Mark Doliner <markdoliner@pidgin.im>
parents:
4293
diff
changeset
|
245 | "us", "en", \ |
|
f3f135811a70
[gaim-migrate @ 4571]
Mark Doliner <markdoliner@pidgin.im>
parents:
4293
diff
changeset
|
246 | } |
|
f3f135811a70
[gaim-migrate @ 4571]
Mark Doliner <markdoliner@pidgin.im>
parents:
4293
diff
changeset
|
247 | |
|
4071
f0c425b22b92
[gaim-migrate @ 4283]
Mark Doliner <markdoliner@pidgin.im>
parents:
4070
diff
changeset
|
248 | #define CLIENTINFO_AIM_KNOWNGOOD CLIENTINFO_AIM_5_1_3036 |
|
f0c425b22b92
[gaim-migrate @ 4283]
Mark Doliner <markdoliner@pidgin.im>
parents:
4070
diff
changeset
|
249 | #define CLIENTINFO_ICQ_KNOWNGOOD CLIENTINFO_ICQ_5_45_3777 |
| 2086 | 250 | |
| 251 | /* | |
| 252 | * These could be arbitrary, but its easier to use the actual AIM values | |
| 253 | */ | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
254 | #define AIM_CONN_TYPE_BOS 0x0002 |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
255 | #define AIM_CONN_TYPE_ADS 0x0005 |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
256 | #define AIM_CONN_TYPE_AUTH 0x0007 |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
257 | #define AIM_CONN_TYPE_CHATNAV 0x000d |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
258 | #define AIM_CONN_TYPE_CHAT 0x000e |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
259 | #define AIM_CONN_TYPE_SEARCH 0x000f |
|
4804
e6e0e6d50d39
[gaim-migrate @ 5124]
Mark Doliner <markdoliner@pidgin.im>
parents:
4763
diff
changeset
|
260 | #define AIM_CONN_TYPE_ICON 0x0010 |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
261 | #define AIM_CONN_TYPE_EMAIL 0x0018 |
| 2086 | 262 | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
263 | /* they start getting arbitrary for rendezvous stuff =) */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
264 | #define AIM_CONN_TYPE_RENDEZVOUS 0xfffe /* these do not speak FLAP! */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
265 | #define AIM_CONN_TYPE_LISTENER 0xffff /* socket waiting for accept() */ |
| 2086 | 266 | |
| 267 | /* | |
| 268 | * Subtypes, we need these for OFT stuff. | |
| 269 | */ | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
270 | #define AIM_CONN_SUBTYPE_OFT_DIRECTIM 0x0001 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
271 | #define AIM_CONN_SUBTYPE_OFT_GETFILE 0x0002 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
272 | #define AIM_CONN_SUBTYPE_OFT_SENDFILE 0x0003 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
273 | #define AIM_CONN_SUBTYPE_OFT_BUDDYICON 0x0004 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
274 | #define AIM_CONN_SUBTYPE_OFT_VOICE 0x0005 |
| 2086 | 275 | |
| 276 | /* | |
| 277 | * Status values returned from aim_conn_new(). ORed together. | |
| 278 | */ | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
279 | #define AIM_CONN_STATUS_READY 0x0001 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
280 | #define AIM_CONN_STATUS_INTERNALERR 0x0002 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
281 | #define AIM_CONN_STATUS_RESOLVERR 0x0040 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
282 | #define AIM_CONN_STATUS_CONNERR 0x0080 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
283 | #define AIM_CONN_STATUS_INPROGRESS 0x0100 |
| 2086 | 284 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
285 | #define AIM_FRAMETYPE_FLAP 0x0000 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
286 | #define AIM_FRAMETYPE_OFT 0x0001 |
| 2086 | 287 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
288 | typedef struct aim_conn_s { |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
289 | int fd; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
290 | fu16_t type; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
291 | fu16_t subtype; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
292 | flap_seqnum_t seqnum; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
293 | fu32_t status; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
294 | void *priv; /* misc data the client may want to store */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
295 | void *internal; /* internal conn-specific libfaim data */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
296 | time_t lastactivity; /* time of last transmit */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
297 | int forcedlatency; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
298 | void *handlerlist; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
299 | void *sessv; /* pointer to parent session */ |
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
300 | void *inside; /* only accessible from inside libfaim */ |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
301 | struct aim_conn_s *next; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
302 | } aim_conn_t; |
| 2086 | 303 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
304 | /* |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
305 | * Byte Stream type. Sort of. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
306 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
307 | * Use of this type serves a couple purposes: |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
308 | * - Buffer/buflen pairs are passed all around everywhere. This turns |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
309 | * that into one value, as well as abstracting it slightly. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
310 | * - Through the abstraction, it is possible to enable bounds checking |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
311 | * for robustness at the cost of performance. But a clean failure on |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
312 | * weird packets is much better than a segfault. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
313 | * - I like having variables named "bs". |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
314 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
315 | * Don't touch the insides of this struct. Or I'll have to kill you. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
316 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
317 | */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
318 | typedef struct aim_bstream_s { |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
319 | fu8_t *data; |
| 3033 | 320 | fu32_t len; |
| 321 | fu32_t offset; | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
322 | } aim_bstream_t; |
| 2086 | 323 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
324 | typedef struct aim_frame_s { |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
325 | fu8_t hdrtype; /* defines which piece of the union to use */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
326 | union { |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
327 | struct { |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
328 | fu8_t type; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
329 | flap_seqnum_t seqnum; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
330 | } flap; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
331 | struct { |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
332 | fu8_t magic[4]; /* ODC2 or OFT2 */ |
|
3952
d13e1fde68d8
[gaim-migrate @ 4133]
Mark Doliner <markdoliner@pidgin.im>
parents:
3912
diff
changeset
|
333 | fu16_t hdrlen; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
334 | fu16_t type; |
|
3952
d13e1fde68d8
[gaim-migrate @ 4133]
Mark Doliner <markdoliner@pidgin.im>
parents:
3912
diff
changeset
|
335 | } rend; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
336 | } hdr; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
337 | aim_bstream_t data; /* payload stream */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
338 | fu8_t handled; /* 0 = new, !0 = been handled */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
339 | fu8_t nofree; /* 0 = free data on purge, 1 = only unlink */ |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
340 | aim_conn_t *conn; /* the connection it came in on... */ |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
341 | struct aim_frame_s *next; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
342 | } aim_frame_t; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
343 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
344 | typedef struct aim_msgcookie_s { |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
345 | fu8_t cookie[8]; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
346 | int type; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
347 | void *data; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
348 | time_t addtime; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
349 | struct aim_msgcookie_s *next; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
350 | } aim_msgcookie_t; |
| 2086 | 351 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
352 | /* Values for sess->flags */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
353 | #define AIM_SESS_FLAGS_SNACLOGIN 0x00000001 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
354 | #define AIM_SESS_FLAGS_XORLOGIN 0x00000002 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
355 | #define AIM_SESS_FLAGS_NONBLOCKCONNECT 0x00000004 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
356 | #define AIM_SESS_FLAGS_DONTTIMEOUTONICBM 0x00000008 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
357 | |
| 2086 | 358 | /* |
| 359 | * AIM Session: The main client-data interface. | |
| 360 | * | |
| 361 | */ | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
362 | typedef struct aim_session_s { |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
363 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
364 | /* ---- Client Accessible ------------------------ */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
365 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
366 | /* Our screen name. */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
367 | char sn[MAXSNLEN+1]; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
368 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
369 | /* |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
370 | * Pointer to anything the client wants to |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
371 | * explicitly associate with this session. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
372 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
373 | * This is for use in the callbacks mainly. In any |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
374 | * callback, you can access this with sess->aux_data. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
375 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
376 | */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
377 | void *aux_data; |
| 2086 | 378 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
379 | /* ---- Internal Use Only ------------------------ */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
380 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
381 | /* Connection information */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
382 | aim_conn_t *connlist; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
383 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
384 | /* |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
385 | * Transmit/receive queues. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
386 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
387 | * These are only used when you don't use your own lowlevel |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
388 | * I/O. I don't suggest that you use libfaim's internal I/O. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
389 | * Its really bad and the API/event model is quirky at best. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
390 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
391 | */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
392 | aim_frame_t *queue_outgoing; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
393 | aim_frame_t *queue_incoming; |
| 2086 | 394 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
395 | /* |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
396 | * Tx Enqueuing function. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
397 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
398 | * This is how you override the transmit direction of libfaim's |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
399 | * internal I/O. This function will be called whenever it needs |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
400 | * to send something. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
401 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
402 | */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
403 | int (*tx_enqueue)(struct aim_session_s *, aim_frame_t *); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
404 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
405 | void *modlistv; |
| 2086 | 406 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
407 | struct { |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
408 | char server[128]; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
409 | char username[128]; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
410 | char password[128]; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
411 | } socksproxy; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
412 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
413 | fu32_t flags; /* AIM_SESS_FLAGS_ */ |
| 2086 | 414 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
415 | int debug; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
416 | void (*debugcb)(struct aim_session_s *sess, int level, const char *format, va_list va); /* same as faim_debugging_callback_t */ |
| 2086 | 417 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
418 | /* |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
419 | * Outstanding snac handling |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
420 | * |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
421 | * XXX: Should these be per-connection? -mid |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
422 | */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
423 | void *snac_hash[FAIM_SNAC_HASH_SIZE]; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
424 | aim_snacid_t snacid_next; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
425 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
426 | aim_msgcookie_t *msgcookies; |
|
4624
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
427 | struct aim_icq_info *icq_info; |
|
4826
ce211ce6a336
[gaim-migrate @ 5151]
Mark Doliner <markdoliner@pidgin.im>
parents:
4811
diff
changeset
|
428 | struct aim_oft_info *oft_info; |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
429 | struct aim_authresp_info *authinfo; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
430 | struct aim_emailinfo *emailinfo; |
| 2086 | 431 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
432 | /* Server-stored information (ssi) */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
433 | struct { |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
434 | int received_data; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
435 | fu16_t numitems; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
436 | struct aim_ssi_item *official; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
437 | struct aim_ssi_item *local; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
438 | struct aim_ssi_tmp *pending; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
439 | time_t timestamp; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
440 | int waiting_for_ack; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
441 | } ssi; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
442 | } aim_session_t; |
| 2086 | 443 | |
|
2507
4f2c8913240e
[gaim-migrate @ 2520]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2421
diff
changeset
|
444 | /* Valid for calling aim_icq_setstatus() and for aim_userinfo_t->icqinfo.status */ |
| 4342 | 445 | #define AIM_ICQ_STATE_NORMAL 0x00000000 |
| 446 | #define AIM_ICQ_STATE_AWAY 0x00000001 | |
| 447 | #define AIM_ICQ_STATE_DND 0x00000002 | |
| 448 | #define AIM_ICQ_STATE_OUT 0x00000004 | |
| 449 | #define AIM_ICQ_STATE_BUSY 0x00000010 | |
| 450 | #define AIM_ICQ_STATE_CHAT 0x00000020 | |
| 451 | #define AIM_ICQ_STATE_INVISIBLE 0x00000100 | |
| 452 | #define AIM_ICQ_STATE_WEBAWARE 0x00010000 | |
| 453 | #define AIM_ICQ_STATE_HIDEIP 0x00020000 | |
| 454 | #define AIM_ICQ_STATE_BIRTHDAY 0x00080000 | |
| 455 | #define AIM_ICQ_STATE_DIRECTDISABLED 0x00100000 | |
| 456 | #define AIM_ICQ_STATE_ICQHOMEPAGE 0x00200000 | |
| 457 | #define AIM_ICQ_STATE_DIRECTREQUIREAUTH 0x10000000 | |
| 458 | #define AIM_ICQ_STATE_DIRECTCONTACTLIST 0x20000000 | |
|
2507
4f2c8913240e
[gaim-migrate @ 2520]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2421
diff
changeset
|
459 | |
|
2421
009ae3cf0e83
[gaim-migrate @ 2434]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2315
diff
changeset
|
460 | |
| 2086 | 461 | |
| 462 | /* | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
463 | * Get command from connections |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
464 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
465 | * aim_get_commmand() is the libfaim lowlevel I/O in the receive direction. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
466 | * XXX Make this easily overridable. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
467 | * |
| 2086 | 468 | */ |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
469 | faim_export int aim_get_command(aim_session_t *, aim_conn_t *); |
| 2086 | 470 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
471 | /* |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
472 | * Dispatch commands that are in the rx queue. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
473 | */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
474 | faim_export void aim_rxdispatch(aim_session_t *); |
| 2086 | 475 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
476 | faim_export int aim_debugconn_sendconnect(aim_session_t *sess, aim_conn_t *conn); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
477 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
478 | faim_export int aim_logoff(aim_session_t *); |
| 2086 | 479 | |
| 480 | #if !defined(FAIM_INTERNAL) || defined(FAIM_INTERNAL_INSANE) | |
| 481 | /* the library should never call aim_conn_kill */ | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
482 | faim_export void aim_conn_kill(aim_session_t *sess, aim_conn_t **deadconn); |
| 2086 | 483 | #endif |
| 484 | ||
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
485 | typedef int (*aim_rxcallback_t)(aim_session_t *, aim_frame_t *, ...); |
| 2086 | 486 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
487 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
488 | /* auth.c */ |
| 2704 | 489 | struct aim_clientrelease { |
| 490 | char *name; | |
| 491 | fu32_t build; | |
| 492 | char *url; | |
| 493 | char *info; | |
| 494 | }; | |
| 495 | ||
| 496 | struct aim_authresp_info { | |
| 497 | char *sn; | |
| 498 | fu16_t errorcode; | |
| 499 | char *errorurl; | |
| 500 | fu16_t regstatus; | |
| 501 | char *email; | |
| 502 | char *bosip; | |
|
4293
c025f268b6df
[gaim-migrate @ 4546]
Mark Doliner <markdoliner@pidgin.im>
parents:
4269
diff
changeset
|
503 | fu16_t cookielen; |
| 2704 | 504 | fu8_t *cookie; |
|
3912
334ebe7e5f93
[gaim-migrate @ 4071]
Mark Doliner <markdoliner@pidgin.im>
parents:
3867
diff
changeset
|
505 | char *chpassurl; |
| 2704 | 506 | struct aim_clientrelease latestrelease; |
| 507 | struct aim_clientrelease latestbeta; | |
| 508 | }; | |
| 509 | ||
|
2821
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
510 | /* Callback data for redirect. */ |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
511 | struct aim_redirect_data { |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
512 | fu16_t group; |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
513 | const char *ip; |
|
4293
c025f268b6df
[gaim-migrate @ 4546]
Mark Doliner <markdoliner@pidgin.im>
parents:
4269
diff
changeset
|
514 | fu16_t cookielen; |
|
2821
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
515 | const fu8_t *cookie; |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
516 | struct { /* group == AIM_CONN_TYPE_CHAT */ |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
517 | fu16_t exchange; |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
518 | const char *room; |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
519 | fu16_t instance; |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
520 | } chat; |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
521 | }; |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
522 | |
| 2672 | 523 | faim_export int aim_clientready(aim_session_t *sess, aim_conn_t *conn); |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
524 | faim_export int aim_sendflapver(aim_session_t *sess, aim_conn_t *conn); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
525 | faim_export int aim_request_login(aim_session_t *sess, aim_conn_t *conn, const char *sn); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
526 | faim_export int aim_send_login(aim_session_t *, aim_conn_t *, const char *, const char *, struct client_info_s *, const char *key); |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
527 | faim_export int aim_encode_password_md5(const char *password, const char *key, fu8_t *digest); |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
528 | faim_export void aim_purge_rxqueue(aim_session_t *); |
|
4333
f4c095774bc2
[gaim-migrate @ 4597]
Mark Doliner <markdoliner@pidgin.im>
parents:
4317
diff
changeset
|
529 | faim_export void aim_cleansnacs(aim_session_t *, int maxage); |
| 2086 | 530 | |
| 531 | #define AIM_TX_QUEUED 0 /* default */ | |
| 532 | #define AIM_TX_IMMEDIATE 1 | |
| 533 | #define AIM_TX_USER 2 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
534 | faim_export int aim_tx_setenqueue(aim_session_t *sess, int what, int (*func)(aim_session_t *, aim_frame_t *)); |
| 2086 | 535 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
536 | faim_export int aim_tx_flushqueue(aim_session_t *); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
537 | faim_export void aim_tx_purgequeue(aim_session_t *); |
| 2086 | 538 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
539 | faim_export int aim_conn_setlatency(aim_conn_t *conn, int newval); |
| 2086 | 540 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
541 | faim_export int aim_conn_addhandler(aim_session_t *, aim_conn_t *conn, u_short family, u_short type, aim_rxcallback_t newhandler, u_short flags); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
542 | faim_export int aim_clearhandlers(aim_conn_t *conn); |
| 2086 | 543 | |
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
544 | faim_export aim_conn_t *aim_conn_findbygroup(aim_session_t *sess, fu16_t group); |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
545 | faim_export aim_session_t *aim_conn_getsess(aim_conn_t *conn); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
546 | faim_export void aim_conn_close(aim_conn_t *deadconn); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
547 | faim_export aim_conn_t *aim_newconn(aim_session_t *, int type, const char *dest); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
548 | faim_export int aim_conngetmaxfd(aim_session_t *); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
549 | faim_export aim_conn_t *aim_select(aim_session_t *, struct timeval *, int *); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
550 | faim_export int aim_conn_isready(aim_conn_t *); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
551 | faim_export int aim_conn_setstatus(aim_conn_t *, int); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
552 | faim_export int aim_conn_completeconnect(aim_session_t *sess, aim_conn_t *conn); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
553 | faim_export int aim_conn_isconnecting(aim_conn_t *conn); |
| 2086 | 554 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
555 | typedef void (*faim_debugging_callback_t)(aim_session_t *sess, int level, const char *format, va_list va); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
556 | faim_export int aim_setdebuggingcb(aim_session_t *sess, faim_debugging_callback_t); |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
557 | faim_export void aim_session_init(aim_session_t *, fu32_t flags, int debuglevel); |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
558 | faim_export void aim_session_kill(aim_session_t *); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
559 | faim_export void aim_setupproxy(aim_session_t *sess, const char *server, const char *username, const char *password); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
560 | faim_export aim_conn_t *aim_getconn_type(aim_session_t *, int type); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
561 | faim_export aim_conn_t *aim_getconn_type_all(aim_session_t *, int type); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
562 | faim_export aim_conn_t *aim_getconn_fd(aim_session_t *, int fd); |
| 2086 | 563 | |
|
3912
334ebe7e5f93
[gaim-migrate @ 4071]
Mark Doliner <markdoliner@pidgin.im>
parents:
3867
diff
changeset
|
564 | /* misc.c */ |
| 2086 | 565 | |
| 566 | #define AIM_VISIBILITYCHANGE_PERMITADD 0x05 | |
| 567 | #define AIM_VISIBILITYCHANGE_PERMITREMOVE 0x06 | |
| 568 | #define AIM_VISIBILITYCHANGE_DENYADD 0x07 | |
| 569 | #define AIM_VISIBILITYCHANGE_DENYREMOVE 0x08 | |
| 570 | ||
| 571 | #define AIM_PRIVFLAGS_ALLOWIDLE 0x01 | |
| 572 | #define AIM_PRIVFLAGS_ALLOWMEMBERSINCE 0x02 | |
| 573 | ||
| 574 | #define AIM_WARN_ANON 0x01 | |
| 575 | ||
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
576 | faim_export int aim_sendpauseack(aim_session_t *sess, aim_conn_t *conn); |
|
2703
6111a9790868
[gaim-migrate @ 2716]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2675
diff
changeset
|
577 | faim_export int aim_nop(aim_session_t *, aim_conn_t *); |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
578 | faim_export int aim_flap_nop(aim_session_t *sess, aim_conn_t *conn); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
579 | faim_export int aim_bos_setidle(aim_session_t *, aim_conn_t *, fu32_t); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
580 | faim_export int aim_bos_changevisibility(aim_session_t *, aim_conn_t *, int, const char *); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
581 | faim_export int aim_bos_setbuddylist(aim_session_t *, aim_conn_t *, const char *); |
|
4151
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
582 | faim_export int aim_bos_setprofile(aim_session_t *sess, aim_conn_t *conn, const char *profile_encoding, const char *profile, const int profile_len, const char *awaymsg_encoding, const char *awaymsg, const int awaymsg_len, fu32_t caps); |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
583 | faim_export int aim_bos_setgroupperm(aim_session_t *, aim_conn_t *, fu32_t mask); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
584 | faim_export int aim_bos_setprivacyflags(aim_session_t *, aim_conn_t *, fu32_t); |
|
2703
6111a9790868
[gaim-migrate @ 2716]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2675
diff
changeset
|
585 | faim_export int aim_reqpersonalinfo(aim_session_t *, aim_conn_t *); |
|
6111a9790868
[gaim-migrate @ 2716]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2675
diff
changeset
|
586 | faim_export int aim_reqservice(aim_session_t *, aim_conn_t *, fu16_t); |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
587 | faim_export int aim_bos_reqrights(aim_session_t *, aim_conn_t *); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
588 | faim_export int aim_bos_reqbuddyrights(aim_session_t *, aim_conn_t *); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
589 | faim_export int aim_bos_reqlocaterights(aim_session_t *, aim_conn_t *); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
590 | faim_export int aim_setdirectoryinfo(aim_session_t *sess, aim_conn_t *conn, const char *first, const char *middle, const char *last, const char *maiden, const char *nickname, const char *street, const char *city, const char *state, const char *zip, int country, fu16_t privacy); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
591 | faim_export int aim_setuserinterests(aim_session_t *sess, aim_conn_t *conn, const char *interest1, const char *interest2, const char *interest3, const char *interest4, const char *interest5, fu16_t privacy); |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
592 | faim_export int aim_setextstatus(aim_session_t *sess, fu32_t status); |
| 2086 | 593 | |
| 594 | #define AIM_CLIENTTYPE_UNKNOWN 0x0000 | |
| 595 | #define AIM_CLIENTTYPE_MC 0x0001 | |
| 596 | #define AIM_CLIENTTYPE_WINAIM 0x0002 | |
| 597 | #define AIM_CLIENTTYPE_WINAIM41 0x0003 | |
| 598 | #define AIM_CLIENTTYPE_AOL_TOC 0x0004 | |
| 5800 | 599 | faim_export fu16_t aim_im_fingerprint(const fu8_t *msghdr, int len); |
| 2086 | 600 | |
| 601 | #define AIM_RATE_CODE_CHANGE 0x0001 | |
| 602 | #define AIM_RATE_CODE_WARNING 0x0002 | |
| 603 | #define AIM_RATE_CODE_LIMIT 0x0003 | |
| 604 | #define AIM_RATE_CODE_CLEARLIMIT 0x0004 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
605 | faim_export int aim_ads_requestads(aim_session_t *sess, aim_conn_t *conn); |
| 2086 | 606 | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
607 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
608 | |
|
3912
334ebe7e5f93
[gaim-migrate @ 4071]
Mark Doliner <markdoliner@pidgin.im>
parents:
3867
diff
changeset
|
609 | /* im.c */ |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
610 | #define AIM_OFT_SUBTYPE_SEND_FILE 0x0001 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
611 | #define AIM_OFT_SUBTYPE_SEND_DIR 0x0002 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
612 | #define AIM_OFT_SUBTYPE_GET_FILE 0x0011 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
613 | #define AIM_OPT_SUBTYPE_GET_LIST 0x0012 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
614 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
615 | #define AIM_TRANSFER_DENY_NOTSUPPORTED 0x0000 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
616 | #define AIM_TRANSFER_DENY_DECLINE 0x0001 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
617 | #define AIM_TRANSFER_DENY_NOTACCEPTING 0x0002 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
618 | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
619 | #define AIM_IMPARAM_FLAG_CHANMSGS_ALLOWED 0x00000001 |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
620 | #define AIM_IMPARAM_FLAG_MISSEDCALLS_ENABLED 0x00000002 |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
621 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
622 | /* This is what the server will give you if you don't set them yourself. */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
623 | #define AIM_IMPARAM_DEFAULTS { \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
624 | 0, \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
625 | AIM_IMPARAM_FLAG_CHANMSGS_ALLOWED | AIM_IMPARAM_FLAG_MISSEDCALLS_ENABLED, \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
626 | 512, /* !! Note how small this is. */ \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
627 | (99.9)*10, (99.9)*10, \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
628 | 1000 /* !! And how large this is. */ \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
629 | } |
| 2086 | 630 | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
631 | /* This is what most AIM versions use. */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
632 | #define AIM_IMPARAM_REASONABLE { \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
633 | 0, \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
634 | AIM_IMPARAM_FLAG_CHANMSGS_ALLOWED | AIM_IMPARAM_FLAG_MISSEDCALLS_ENABLED, \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
635 | 8000, \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
636 | (99.9)*10, (99.9)*10, \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
637 | 0 \ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
638 | } |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
639 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
640 | struct aim_icbmparameters { |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
641 | fu16_t maxchan; |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
642 | fu32_t flags; /* AIM_IMPARAM_FLAG_ */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
643 | fu16_t maxmsglen; /* message size that you will accept */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
644 | fu16_t maxsenderwarn; /* this and below are *10 (999=99.9%) */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
645 | fu16_t maxrecverwarn; |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
646 | fu32_t minmsginterval; /* in milliseconds? */ |
| 2086 | 647 | }; |
| 648 | ||
| 649 | struct aim_chat_roominfo { | |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
650 | fu16_t exchange; |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
651 | char *name; |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
652 | fu16_t instance; |
| 2086 | 653 | }; |
| 654 | ||
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
655 | #define AIM_IMFLAGS_AWAY 0x0001 /* mark as an autoreply */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
656 | #define AIM_IMFLAGS_ACK 0x0002 /* request a receipt notice */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
657 | #define AIM_IMFLAGS_UNICODE 0x0004 |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
658 | #define AIM_IMFLAGS_ISO_8859_1 0x0008 |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
659 | #define AIM_IMFLAGS_BUDDYREQ 0x0010 /* buddy icon requested */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
660 | #define AIM_IMFLAGS_HASICON 0x0020 /* already has icon */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
661 | #define AIM_IMFLAGS_SUBENC_MACINTOSH 0x0040 /* damn that Steve Jobs! */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
662 | #define AIM_IMFLAGS_CUSTOMFEATURES 0x0080 /* features field present */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
663 | #define AIM_IMFLAGS_EXTDATA 0x0100 |
|
4662
740f32459759
[gaim-migrate @ 4973]
Mark Doliner <markdoliner@pidgin.im>
parents:
4650
diff
changeset
|
664 | #define AIM_IMFLAGS_X 0x0200 |
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
665 | #define AIM_IMFLAGS_MULTIPART 0x0400 /* ->mpmsg section valid */ |
|
2703
6111a9790868
[gaim-migrate @ 2716]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2675
diff
changeset
|
666 | #define AIM_IMFLAGS_OFFLINE 0x0800 /* send to offline user */ |
|
3595
28da7ae040a5
[gaim-migrate @ 3697]
Mark Doliner <markdoliner@pidgin.im>
parents:
3466
diff
changeset
|
667 | #define AIM_IMFLAGS_TYPINGNOT 0x1000 /* typing notification */ |
| 2086 | 668 | |
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
669 | /* |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
670 | * Multipart message structures. |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
671 | */ |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
672 | typedef struct aim_mpmsg_section_s { |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
673 | fu16_t charset; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
674 | fu16_t charsubset; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
675 | fu8_t *data; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
676 | fu16_t datalen; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
677 | struct aim_mpmsg_section_s *next; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
678 | } aim_mpmsg_section_t; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
679 | |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
680 | typedef struct aim_mpmsg_s { |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
681 | int numparts; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
682 | aim_mpmsg_section_t *parts; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
683 | } aim_mpmsg_t; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
684 | |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
685 | faim_export int aim_mpmsg_init(aim_session_t *sess, aim_mpmsg_t *mpm); |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
686 | faim_export int aim_mpmsg_addraw(aim_session_t *sess, aim_mpmsg_t *mpm, fu16_t charset, fu16_t charsubset, const fu8_t *data, fu16_t datalen); |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
687 | faim_export int aim_mpmsg_addascii(aim_session_t *sess, aim_mpmsg_t *mpm, const char *ascii); |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
688 | faim_export int aim_mpmsg_addunicode(aim_session_t *sess, aim_mpmsg_t *mpm, const fu16_t *unicode, fu16_t unicodelen); |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
689 | faim_export void aim_mpmsg_free(aim_session_t *sess, aim_mpmsg_t *mpm); |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
690 | |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
691 | /* |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
692 | * Arguments to aim_send_im_ext(). |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
693 | * |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
694 | * This is really complicated. But immensely versatile. |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
695 | * |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
696 | */ |
| 2086 | 697 | struct aim_sendimext_args { |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
698 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
699 | /* These are _required_ */ |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
700 | const char *destsn; |
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
701 | fu32_t flags; /* often 0 */ |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
702 | |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
703 | /* Only required if not using multipart messages */ |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
704 | const char *msg; |
|
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
705 | int msglen; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
706 | |
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
707 | /* Required if ->msg is not provided */ |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
708 | aim_mpmsg_t *mpmsg; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
709 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
710 | /* Only used if AIM_IMFLAGS_HASICON is set */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
711 | fu32_t iconlen; |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
712 | time_t iconstamp; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
713 | fu32_t iconsum; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
714 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
715 | /* Only used if AIM_IMFLAGS_CUSTOMFEATURES is set */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
716 | fu8_t *features; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
717 | fu8_t featureslen; |
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
718 | |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
719 | /* Only used if AIM_IMFLAGS_CUSTOMCHARSET is set and mpmsg not used */ |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
720 | fu16_t charset; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
721 | fu16_t charsubset; |
| 2086 | 722 | }; |
| 723 | ||
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
724 | /* |
|
2866
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
725 | * Arguments to aim_send_rtfmsg(). |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
726 | */ |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
727 | struct aim_sendrtfmsg_args { |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
728 | const char *destsn; |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
729 | fu32_t fgcolor; |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
730 | fu32_t bgcolor; |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
731 | const char *rtfmsg; /* must be in RTF */ |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
732 | }; |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
733 | |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
734 | /* |
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
735 | * This information is provided in the Incoming ICBM callback for |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
736 | * Channel 1 ICBM's. |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
737 | * |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
738 | * Note that although CUSTOMFEATURES and CUSTOMCHARSET say they |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
739 | * are optional, both are always set by the current libfaim code. |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
740 | * That may or may not change in the future. It is mainly for |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
741 | * consistency with aim_sendimext_args. |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
742 | * |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
743 | * Multipart messages require some explanation. If you want to use them, |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
744 | * I suggest you read all the comments in im.c. |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
745 | * |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
746 | */ |
| 2086 | 747 | struct aim_incomingim_ch1_args { |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
748 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
749 | /* Always provided */ |
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
750 | aim_mpmsg_t mpmsg; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
751 | fu32_t icbmflags; /* some flags apply only to ->msg, not all mpmsg */ |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
752 | |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
753 | /* Only provided if message has a human-readable section */ |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
754 | char *msg; |
|
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
755 | int msglen; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
756 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
757 | /* Only provided if AIM_IMFLAGS_HASICON is set */ |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
758 | time_t iconstamp; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
759 | fu32_t iconlen; |
|
2626
9e459528a570
[gaim-migrate @ 2639]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2507
diff
changeset
|
760 | fu16_t iconsum; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
761 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
762 | /* Only provided if AIM_IMFLAGS_CUSTOMFEATURES is set */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
763 | fu8_t *features; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
764 | fu8_t featureslen; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
765 | |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
766 | /* Only provided if AIM_IMFLAGS_EXTDATA is set */ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
767 | fu8_t extdatalen; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
768 | fu8_t *extdata; |
|
2270
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
769 | |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
770 | /* Only used if AIM_IMFLAGS_CUSTOMCHARSET is set */ |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
771 | fu16_t charset; |
|
c65fc356fb68
[gaim-migrate @ 2280]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
772 | fu16_t charsubset; |
| 2086 | 773 | }; |
| 774 | ||
| 2869 | 775 | /* Valid values for channel 2 args->status */ |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
776 | #define AIM_RENDEZVOUS_PROPOSE 0x0000 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
777 | #define AIM_RENDEZVOUS_CANCEL 0x0001 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
778 | #define AIM_RENDEZVOUS_ACCEPT 0x0002 |
| 2869 | 779 | |
| 2086 | 780 | struct aim_incomingim_ch2_args { |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
781 | fu16_t status; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
782 | fu8_t cookie[8]; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
783 | fu16_t reqclass; |
|
4898
285e9ff6eeb8
[gaim-migrate @ 5230]
Mark Doliner <markdoliner@pidgin.im>
parents:
4889
diff
changeset
|
784 | const char *proxyip; |
| 2869 | 785 | const char *clientip; |
| 786 | const char *verifiedip; | |
| 787 | fu16_t port; | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
788 | fu16_t errorcode; |
| 2869 | 789 | const char *msg; /* invite message or file description */ |
| 790 | const char *encoding; | |
| 791 | const char *language; | |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
792 | union { |
|
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
793 | struct { |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
794 | fu32_t checksum; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
795 | fu32_t length; |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
796 | time_t timestamp; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
797 | fu8_t *icon; |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
798 | } icon; |
|
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
799 | struct { |
| 2869 | 800 | struct aim_chat_roominfo roominfo; |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
801 | } chat; |
|
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
802 | struct { |
|
2866
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
803 | fu32_t fgcolor; |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
804 | fu32_t bgcolor; |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
805 | const char *rtfmsg; |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
806 | } rtfmsg; |
| 3630 | 807 | struct { |
| 3771 | 808 | fu16_t subtype; |
| 3630 | 809 | fu16_t totfiles; |
| 810 | fu32_t totsize; | |
| 811 | char *filename; | |
| 812 | } sendfile; | |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
813 | } info; |
| 2869 | 814 | void *destructor; /* used internally only */ |
| 2086 | 815 | }; |
| 816 | ||
| 3141 | 817 | /* Valid values for channel 4 args->type */ |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
818 | #define AIM_ICQMSG_AUTHREQUEST 0x0006 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
819 | #define AIM_ICQMSG_AUTHDENIED 0x0007 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
820 | #define AIM_ICQMSG_AUTHGRANTED 0x0008 |
| 3141 | 821 | |
| 822 | struct aim_incomingim_ch4_args { | |
| 823 | fu32_t uin; /* Of the sender of the ICBM */ | |
|
4173
e2528bd24e6f
[gaim-migrate @ 4403]
Mark Doliner <markdoliner@pidgin.im>
parents:
4151
diff
changeset
|
824 | fu8_t type; |
|
e2528bd24e6f
[gaim-migrate @ 4403]
Mark Doliner <markdoliner@pidgin.im>
parents:
4151
diff
changeset
|
825 | fu8_t flags; |
| 3141 | 826 | char *msg; /* Reason for auth request, deny, or accept */ |
|
4076
563a1af15501
[gaim-migrate @ 4291]
Mark Doliner <markdoliner@pidgin.im>
parents:
4071
diff
changeset
|
827 | int msglen; |
| 3141 | 828 | }; |
| 829 | ||
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
830 | /* SNAC sending functions */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
831 | /* 0x0002 */ faim_export int aim_im_setparams(aim_session_t *sess, struct aim_icbmparameters *params); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
832 | /* 0x0004 */ faim_export int aim_im_reqparams(aim_session_t *sess); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
833 | /* 0x0006 */ faim_export int aim_im_sendch1_ext(aim_session_t *sess, struct aim_sendimext_args *args); |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
834 | /* 0x0006 */ faim_export int aim_im_sendch1(aim_session_t *, const char *destsn, fu16_t flags, const char *msg); |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
835 | /* 0x0006 */ faim_export int aim_im_sendch2_icon(aim_session_t *sess, const char *sn, const fu8_t *icon, int iconlen, time_t stamp, fu16_t iconsum); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
836 | /* 0x0006 */ faim_export int aim_im_sendch2_rtfmsg(aim_session_t *sess, struct aim_sendrtfmsg_args *args); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
837 | /* 0x0006 */ faim_export int aim_im_sendch2_odcrequest(aim_session_t *sess, fu8_t *cookie, const char *sn, const fu8_t *ip, fu16_t port); |
|
5146
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
838 | /* 0x0006 */ faim_export int aim_im_sendch2_sendfile_ask(aim_session_t *sess, struct aim_oft_info *oft_info); |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
839 | /* 0x0006 */ faim_export int aim_im_sendch2_sendfile_accept(aim_session_t *sess, struct aim_oft_info *info); |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
840 | /* 0x0006 */ faim_export int aim_im_sendch2_sendfile_cancel(aim_session_t *sess, struct aim_oft_info *oft_info); |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
841 | /* 0x0006 */ faim_export int aim_im_sendch2_geticqaway(aim_session_t *sess, const char *sn, int type); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
842 | /* 0x0006 */ faim_export int aim_im_sendch4(aim_session_t *sess, char *sn, fu16_t type, fu8_t *message); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
843 | /* 0x0008 */ faim_export int aim_im_warn(aim_session_t *sess, aim_conn_t *conn, const char *destsn, fu32_t flags); |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
844 | /* 0x000b */ faim_export int aim_im_denytransfer(aim_session_t *sess, const char *sender, const char *cookie, fu16_t code); |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
845 | /* 0x0014 */ faim_export int aim_im_sendmtn(aim_session_t *sess, fu16_t type1, char *sn, fu16_t type2); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
846 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
847 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
848 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
849 | /* ft.c */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
850 | struct aim_fileheader_t { |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
851 | #if 0 |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
852 | char magic[4]; /* 0 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
853 | fu16_t hdrlen; /* 4 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
854 | fu16_t hdrtype; /* 6 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
855 | #endif |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
856 | char bcookie[8]; /* 8 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
857 | fu16_t encrypt; /* 16 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
858 | fu16_t compress; /* 18 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
859 | fu16_t totfiles; /* 20 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
860 | fu16_t filesleft; /* 22 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
861 | fu16_t totparts; /* 24 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
862 | fu16_t partsleft; /* 26 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
863 | fu32_t totsize; /* 28 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
864 | fu32_t size; /* 32 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
865 | fu32_t modtime; /* 36 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
866 | fu32_t checksum; /* 40 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
867 | fu32_t rfrcsum; /* 44 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
868 | fu32_t rfsize; /* 48 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
869 | fu32_t cretime; /* 52 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
870 | fu32_t rfcsum; /* 56 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
871 | fu32_t nrecvd; /* 60 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
872 | fu32_t recvcsum; /* 64 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
873 | fu8_t idstring[32]; /* 68 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
874 | fu8_t flags; /* 100 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
875 | fu8_t lnameoffset; /* 101 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
876 | fu8_t lsizeoffset; /* 102 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
877 | char dummy[69]; /* 103 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
878 | char macfileinfo[16]; /* 172 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
879 | fu16_t nencode; /* 188 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
880 | fu16_t nlanguage; /* 190 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
881 | char name[64]; /* 192 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
882 | /* 256 */ |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
883 | }; |
|
3595
28da7ae040a5
[gaim-migrate @ 3697]
Mark Doliner <markdoliner@pidgin.im>
parents:
3466
diff
changeset
|
884 | |
|
4826
ce211ce6a336
[gaim-migrate @ 5151]
Mark Doliner <markdoliner@pidgin.im>
parents:
4811
diff
changeset
|
885 | struct aim_oft_info { |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
886 | char cookie[8]; |
|
5146
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
887 | char *sn; |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
888 | char *proxyip; |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
889 | char *clientip; |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
890 | char *verifiedip; |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
891 | fu16_t port; |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
892 | aim_conn_t *conn; |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
893 | aim_session_t *sess; |
|
4832
32a5d9c54484
[gaim-migrate @ 5157]
Mark Doliner <markdoliner@pidgin.im>
parents:
4826
diff
changeset
|
894 | struct aim_fileheader_t fh; |
|
4826
ce211ce6a336
[gaim-migrate @ 5151]
Mark Doliner <markdoliner@pidgin.im>
parents:
4811
diff
changeset
|
895 | struct aim_oft_info *next; |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
896 | }; |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
897 | |
|
4763
7313e8049f0e
[gaim-migrate @ 5081]
Mark Doliner <markdoliner@pidgin.im>
parents:
4759
diff
changeset
|
898 | faim_export fu32_t aim_oft_checksum_chunk(const fu8_t *buffer, int bufferlen, fu32_t prevcheck); |
|
4650
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
899 | faim_export fu32_t aim_oft_checksum_file(char *filename); |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
900 | faim_export int aim_handlerendconnect(aim_session_t *sess, aim_conn_t *cur); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
901 | faim_export int aim_odc_send_typing(aim_session_t *sess, aim_conn_t *conn, int typing); |
|
4870
50dac8774e21
[gaim-migrate @ 5200]
Mark Doliner <markdoliner@pidgin.im>
parents:
4853
diff
changeset
|
902 | faim_export int aim_odc_send_im(aim_session_t *sess, aim_conn_t *conn, const char *msg, int len, int encoding, int isawaymsg); |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
903 | faim_export const char *aim_odc_getsn(aim_conn_t *conn); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
904 | faim_export aim_conn_t *aim_odc_getconn(aim_session_t *sess, const char *sn); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
905 | faim_export aim_conn_t *aim_odc_initiate(aim_session_t *sess, const char *sn); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
906 | faim_export aim_conn_t *aim_odc_connect(aim_session_t *sess, const char *sn, const char *addr, const fu8_t *cookie); |
|
5146
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
907 | |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
908 | faim_export struct aim_oft_info *aim_oft_createinfo(aim_session_t *sess, const fu8_t *cookie, const char *sn, const char *ip, fu16_t port, fu32_t size, fu32_t modtime, char *filename); |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
909 | faim_export int aim_oft_destroyinfo(struct aim_oft_info *oft_info); |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
910 | faim_export int aim_sendfile_listen(aim_session_t *sess, struct aim_oft_info *oft_info); |
|
56b1615ba288
[gaim-migrate @ 5510]
Mark Doliner <markdoliner@pidgin.im>
parents:
4908
diff
changeset
|
911 | faim_export int aim_oft_sendheader(aim_session_t *sess, fu16_t type, struct aim_oft_info *oft_info); |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
912 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
913 | |
| 2086 | 914 | |
|
3912
334ebe7e5f93
[gaim-migrate @ 4071]
Mark Doliner <markdoliner@pidgin.im>
parents:
3867
diff
changeset
|
915 | /* info.c */ |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
916 | /* |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
917 | * AIM User Info, Standard Form. |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
918 | */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
919 | #define AIM_FLAG_UNCONFIRMED 0x0001 /* "damned transients" */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
920 | #define AIM_FLAG_ADMINISTRATOR 0x0002 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
921 | #define AIM_FLAG_AOL 0x0004 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
922 | #define AIM_FLAG_OSCAR_PAY 0x0008 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
923 | #define AIM_FLAG_FREE 0x0010 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
924 | #define AIM_FLAG_AWAY 0x0020 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
925 | #define AIM_FLAG_ICQ 0x0040 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
926 | #define AIM_FLAG_WIRELESS 0x0080 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
927 | #define AIM_FLAG_UNKNOWN100 0x0100 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
928 | #define AIM_FLAG_UNKNOWN200 0x0200 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
929 | #define AIM_FLAG_ACTIVEBUDDY 0x0400 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
930 | #define AIM_FLAG_UNKNOWN800 0x0800 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
931 | #define AIM_FLAG_ABINTERNAL 0x1000 |
|
5836
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
932 | #define AIM_FLAG_ALLUSERS 0x001f |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
933 | |
|
5836
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
934 | #define AIM_USERINFO_PRESENT_FLAGS 0x00000001 |
|
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
935 | #define AIM_USERINFO_PRESENT_MEMBERSINCE 0x00000002 |
|
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
936 | #define AIM_USERINFO_PRESENT_ONLINESINCE 0x00000004 |
|
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
937 | #define AIM_USERINFO_PRESENT_IDLE 0x00000008 |
|
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
938 | #define AIM_USERINFO_PRESENT_ICQEXTSTATUS 0x00000010 |
|
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
939 | #define AIM_USERINFO_PRESENT_ICQIPADDR 0x00000020 |
|
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
940 | #define AIM_USERINFO_PRESENT_ICQDATA 0x00000040 |
|
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
941 | #define AIM_USERINFO_PRESENT_CAPABILITIES 0x00000080 |
|
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
942 | #define AIM_USERINFO_PRESENT_SESSIONLEN 0x00000100 |
|
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
943 | #define AIM_USERINFO_PRESENT_CREATETIME 0x00000200 |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
944 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
945 | typedef struct { |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
946 | char sn[MAXSNLEN+1]; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
947 | fu16_t warnlevel; /* evil percent * 10 (999 = 99.9%) */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
948 | fu16_t idletime; /* in seconds */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
949 | fu16_t flags; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
950 | fu32_t createtime; /* time_t */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
951 | fu32_t membersince; /* time_t */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
952 | fu32_t onlinesince; /* time_t */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
953 | fu32_t sessionlen; /* in seconds */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
954 | fu32_t capabilities; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
955 | struct { |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
956 | fu32_t status; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
957 | fu32_t ipaddr; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
958 | fu8_t crap[0x25]; /* until we figure it out... */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
959 | } icqinfo; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
960 | fu32_t present; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
961 | fu16_t iconcsumlen; |
|
5836
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
962 | fu8_t *iconcsum; |
|
88819e4cc840
[gaim-migrate @ 6267]
Mark Doliner <markdoliner@pidgin.im>
parents:
5800
diff
changeset
|
963 | char *availablemsg; |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
964 | } aim_userinfo_t; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
965 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
966 | faim_export const char *aim_userinfo_sn(aim_userinfo_t *ui); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
967 | faim_export fu16_t aim_userinfo_flags(aim_userinfo_t *ui); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
968 | faim_export fu16_t aim_userinfo_idle(aim_userinfo_t *ui); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
969 | faim_export float aim_userinfo_warnlevel(aim_userinfo_t *ui); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
970 | faim_export time_t aim_userinfo_createtime(aim_userinfo_t *ui); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
971 | faim_export time_t aim_userinfo_membersince(aim_userinfo_t *ui); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
972 | faim_export time_t aim_userinfo_onlinesince(aim_userinfo_t *ui); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
973 | faim_export fu32_t aim_userinfo_sessionlen(aim_userinfo_t *ui); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
974 | faim_export int aim_userinfo_hascap(aim_userinfo_t *ui, fu32_t cap); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
975 | |
|
4650
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
976 | #define AIM_CAPS_BUDDYICON 0x00000001 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
977 | #define AIM_CAPS_VOICE 0x00000002 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
978 | #define AIM_CAPS_IMIMAGE 0x00000004 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
979 | #define AIM_CAPS_CHAT 0x00000008 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
980 | #define AIM_CAPS_GETFILE 0x00000010 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
981 | #define AIM_CAPS_SENDFILE 0x00000020 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
982 | #define AIM_CAPS_GAMES 0x00000040 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
983 | #define AIM_CAPS_SAVESTOCKS 0x00000080 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
984 | #define AIM_CAPS_SENDBUDDYLIST 0x00000100 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
985 | #define AIM_CAPS_GAMES2 0x00000200 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
986 | #define AIM_CAPS_ICQ 0x00000400 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
987 | #define AIM_CAPS_APINFO 0x00000800 |
|
2866
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
988 | #define AIM_CAPS_ICQRTF 0x00001000 |
|
159551b6db88
[gaim-migrate @ 2879]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2821
diff
changeset
|
989 | #define AIM_CAPS_EMPTY 0x00002000 |
|
4650
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
990 | #define AIM_CAPS_ICQSERVERRELAY 0x00004000 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
991 | #define AIM_CAPS_ICQUNKNOWN 0x00008000 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
992 | #define AIM_CAPS_TRILLIANCRYPT 0x00010000 |
|
5b2338bb19fd
[gaim-migrate @ 4961]
Mark Doliner <markdoliner@pidgin.im>
parents:
4646
diff
changeset
|
993 | #define AIM_CAPS_ICQUTF8 0x00020000 |
|
4811
ce0da6668339
[gaim-migrate @ 5131]
Mark Doliner <markdoliner@pidgin.im>
parents:
4804
diff
changeset
|
994 | #define AIM_CAPS_INTEROPERATE 0x00040000 |
|
ce0da6668339
[gaim-migrate @ 5131]
Mark Doliner <markdoliner@pidgin.im>
parents:
4804
diff
changeset
|
995 | #define AIM_CAPS_LAST 0x00080000 |
| 2086 | 996 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
997 | faim_export int aim_0002_000b(aim_session_t *sess, aim_conn_t *conn, const char *sn); |
| 2086 | 998 | |
| 999 | #define AIM_SENDMEMBLOCK_FLAG_ISREQUEST 0 | |
| 1000 | #define AIM_SENDMEMBLOCK_FLAG_ISHASH 1 | |
| 1001 | ||
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
1002 | faim_export int aim_sendmemblock(aim_session_t *sess, aim_conn_t *conn, fu32_t offset, fu32_t len, const fu8_t *buf, fu8_t flag); |
| 2086 | 1003 | |
| 1004 | #define AIM_GETINFO_GENERALINFO 0x00001 | |
| 1005 | #define AIM_GETINFO_AWAYMESSAGE 0x00003 | |
| 2920 | 1006 | #define AIM_GETINFO_CAPABILITIES 0x0004 |
| 2086 | 1007 | |
| 1008 | struct aim_invite_priv { | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1009 | char *sn; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1010 | char *roomname; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1011 | fu16_t exchange; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1012 | fu16_t instance; |
| 2086 | 1013 | }; |
| 1014 | ||
| 1015 | #define AIM_COOKIETYPE_UNKNOWN 0x00 | |
| 1016 | #define AIM_COOKIETYPE_ICBM 0x01 | |
| 1017 | #define AIM_COOKIETYPE_ADS 0x02 | |
| 1018 | #define AIM_COOKIETYPE_BOS 0x03 | |
| 1019 | #define AIM_COOKIETYPE_IM 0x04 | |
| 1020 | #define AIM_COOKIETYPE_CHAT 0x05 | |
| 1021 | #define AIM_COOKIETYPE_CHATNAV 0x06 | |
| 1022 | #define AIM_COOKIETYPE_INVITE 0x07 | |
| 1023 | /* we'll move OFT up a bit to give breathing room. not like it really | |
| 1024 | * matters. */ | |
| 1025 | #define AIM_COOKIETYPE_OFTIM 0x10 | |
| 1026 | #define AIM_COOKIETYPE_OFTGET 0x11 | |
| 1027 | #define AIM_COOKIETYPE_OFTSEND 0x12 | |
| 1028 | #define AIM_COOKIETYPE_OFTVOICE 0x13 | |
| 1029 | #define AIM_COOKIETYPE_OFTIMAGE 0x14 | |
| 1030 | #define AIM_COOKIETYPE_OFTICON 0x15 | |
| 1031 | ||
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
1032 | /* 0x0005 */ faim_export int aim_getinfo(aim_session_t *, aim_conn_t *, const char *, fu16_t); |
| 2086 | 1033 | |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2122
diff
changeset
|
1034 | |
| 2086 | 1035 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1036 | /* 0x0003 - buddylist.c */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1037 | /* 0x0004 */ faim_export int aim_add_buddy(aim_session_t *, aim_conn_t *, const char *); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1038 | /* 0x0005 */ faim_export int aim_remove_buddy(aim_session_t *, aim_conn_t *, const char *); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1039 | /* 0x000b */ faim_export int aim_sendbuddyoncoming(aim_session_t *sess, aim_conn_t *conn, aim_userinfo_t *info); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1040 | /* 0x000c */ faim_export int aim_sendbuddyoffgoing(aim_session_t *sess, aim_conn_t *conn, const char *sn); |
| 2086 | 1041 | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1042 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1043 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1044 | /* 0x000a - search.c */ |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1045 | faim_export int aim_usersearch_address(aim_session_t *, aim_conn_t *, const char *); |
| 2086 | 1046 | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1047 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1048 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1049 | /* 0x000d - chatnav.c */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1050 | /* 0x000e - chat.c */ |
|
2821
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
1051 | /* These apply to exchanges as well. */ |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
1052 | #define AIM_CHATROOM_FLAG_EVILABLE 0x0001 |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
1053 | #define AIM_CHATROOM_FLAG_NAV_ONLY 0x0002 |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
1054 | #define AIM_CHATROOM_FLAG_INSTANCING_ALLOWED 0x0004 |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
1055 | #define AIM_CHATROOM_FLAG_OCCUPANT_PEEK_ALLOWED 0x0008 |
|
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
1056 | |
| 2086 | 1057 | struct aim_chat_exchangeinfo { |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1058 | fu16_t number; |
|
2821
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
1059 | fu16_t flags; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1060 | char *name; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1061 | char *charset1; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1062 | char *lang1; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1063 | char *charset2; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1064 | char *lang2; |
| 2086 | 1065 | }; |
| 1066 | ||
| 1067 | #define AIM_CHATFLAGS_NOREFLECT 0x0001 | |
| 1068 | #define AIM_CHATFLAGS_AWAY 0x0002 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1069 | faim_export int aim_chat_send_im(aim_session_t *sess, aim_conn_t *conn, fu16_t flags, const char *msg, int msglen); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1070 | faim_export int aim_chat_join(aim_session_t *sess, aim_conn_t *conn, fu16_t exchange, const char *roomname, fu16_t instance); |
|
2821
f1ab7f03bdad
[gaim-migrate @ 2834]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2764
diff
changeset
|
1071 | faim_export int aim_chat_attachname(aim_conn_t *conn, fu16_t exchange, const char *roomname, fu16_t instance); |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1072 | faim_export char *aim_chat_getname(aim_conn_t *conn); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1073 | faim_export aim_conn_t *aim_chat_getconn(aim_session_t *, const char *name); |
| 2086 | 1074 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1075 | faim_export int aim_chatnav_reqrights(aim_session_t *sess, aim_conn_t *conn); |
| 2086 | 1076 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1077 | faim_export int aim_chat_invite(aim_session_t *sess, aim_conn_t *conn, const char *sn, const char *msg, fu16_t exchange, const char *roomname, fu16_t instance); |
| 2086 | 1078 | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1079 | faim_export int aim_chatnav_createroom(aim_session_t *sess, aim_conn_t *conn, const char *name, fu16_t exchange); |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1080 | faim_export int aim_chat_leaveroom(aim_session_t *sess, const char *name); |
| 2086 | 1081 | |
| 2672 | 1082 | |
|
4230
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1083 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1084 | /* 0x000f - newsearch.c */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1085 | struct aim_usersearch { |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1086 | char *first; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1087 | char *last; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1088 | char *middle; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1089 | char *maiden; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1090 | char *email; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1091 | char *country; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1092 | char *state; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1093 | char *city; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1094 | char *sn; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1095 | char *interest; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1096 | char *nick; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1097 | char *zip; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1098 | char *region; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1099 | char *address; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1100 | struct aim_usersearch *next; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1101 | }; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1102 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1103 | faim_export int aim_usersearch_email(aim_session_t *, const char *, const char *); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1104 | faim_export int aim_usersearch_name(aim_session_t *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *, const char *); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1105 | faim_export int aim_usersearch_interest(aim_session_t *, const char *, const char *); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1106 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1107 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1108 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1109 | /* 0x0010 - icon.c */ |
| 5842 | 1110 | faim_export int aim_icon_upload(aim_session_t *sess, aim_conn_t *conn, const fu8_t *icon, fu16_t iconlen); |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1111 | faim_export int aim_icon_request(aim_session_t *sess, const char *sn, const fu8_t *iconstr, fu16_t iconstrlen); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1112 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1113 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1114 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1115 | /* 0x0013 - ssi.c */ |
|
4889
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1116 | #define AIM_SSI_TYPE_BUDDY 0x0000 |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1117 | #define AIM_SSI_TYPE_GROUP 0x0001 |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1118 | #define AIM_SSI_TYPE_PERMIT 0x0002 |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1119 | #define AIM_SSI_TYPE_DENY 0x0003 |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1120 | #define AIM_SSI_TYPE_PDINFO 0x0004 |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1121 | #define AIM_SSI_TYPE_PRESENCEPREFS 0x0005 |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1122 | #define AIM_SSI_TYPE_ICONINFO 0x0014 |
| 2672 | 1123 | |
|
4889
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1124 | #define AIM_SSI_ACK_SUCCESS 0x0000 |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1125 | #define AIM_SSI_ACK_ITEMNOTFOUND 0x0002 |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1126 | #define AIM_SSI_ACK_IDNUMINUSE 0x000a |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1127 | #define AIM_SSI_ACK_ATMAX 0x000c |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1128 | #define AIM_SSI_ACK_INVALIDNAME 0x000d |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1129 | #define AIM_SSI_ACK_AUTHREQUIRED 0x000e |
|
4230
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1130 | |
| 2672 | 1131 | struct aim_ssi_item { |
| 1132 | char *name; | |
| 1133 | fu16_t gid; | |
| 1134 | fu16_t bid; | |
| 1135 | fu16_t type; | |
|
4230
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1136 | struct aim_tlvlist_s *data; |
| 2672 | 1137 | struct aim_ssi_item *next; |
| 1138 | }; | |
| 1139 | ||
|
4230
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1140 | struct aim_ssi_tmp { |
|
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1141 | fu16_t action; |
|
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1142 | fu16_t ack; |
|
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1143 | char *name; |
|
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1144 | struct aim_ssi_item *item; |
|
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1145 | struct aim_ssi_tmp *next; |
|
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1146 | }; |
|
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1147 | |
|
3109
c193eb9c1c30
[gaim-migrate @ 3123]
Mark Doliner <markdoliner@pidgin.im>
parents:
3079
diff
changeset
|
1148 | /* These build the actual SNACs and queue them to be sent */ |
|
4889
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1149 | /* 0x0002 */ faim_export int aim_ssi_reqrights(aim_session_t *sess); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1150 | /* 0x0005 */ faim_export int aim_ssi_reqdata(aim_session_t *sess, time_t localstamp, fu16_t localrev); |
|
4642
a491791dc1a1
[gaim-migrate @ 4952]
Mark Doliner <markdoliner@pidgin.im>
parents:
4625
diff
changeset
|
1151 | /* 0x0007 */ faim_export int aim_ssi_enable(aim_session_t *sess); |
|
4889
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1152 | /* 0x0008 */ faim_export int aim_ssi_addmoddel(aim_session_t *sess); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1153 | /* 0x0011 */ faim_export int aim_ssi_modbegin(aim_session_t *sess); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1154 | /* 0x0012 */ faim_export int aim_ssi_modend(aim_session_t *sess); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1155 | /* 0x0014 */ faim_export int aim_ssi_sendauth(aim_session_t *sess, char *sn, char *msg); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1156 | /* 0x0018 */ faim_export int aim_ssi_sendauthrequest(aim_session_t *sess, char *sn, char *msg); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1157 | /* 0x001a */ faim_export int aim_ssi_sendauthreply(aim_session_t *sess, char *sn, fu8_t reply, char *msg); |
| 2672 | 1158 | |
|
4230
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1159 | /* Client functions for retrieving SSI data */ |
|
3210
9f0e2d3d8a02
[gaim-migrate @ 3227]
Mark Doliner <markdoliner@pidgin.im>
parents:
3141
diff
changeset
|
1160 | faim_export struct aim_ssi_item *aim_ssi_itemlist_find(struct aim_ssi_item *list, fu16_t gid, fu16_t bid); |
| 3466 | 1161 | faim_export struct aim_ssi_item *aim_ssi_itemlist_finditem(struct aim_ssi_item *list, const char *gn, const char *sn, fu16_t type); |
|
4230
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1162 | faim_export struct aim_ssi_item *aim_ssi_itemlist_exists(struct aim_ssi_item *list, const char *sn); |
|
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1163 | faim_export char *aim_ssi_itemlist_findparentname(struct aim_ssi_item *list, const char *sn); |
|
3210
9f0e2d3d8a02
[gaim-migrate @ 3227]
Mark Doliner <markdoliner@pidgin.im>
parents:
3141
diff
changeset
|
1164 | faim_export int aim_ssi_getpermdeny(struct aim_ssi_item *list); |
|
9f0e2d3d8a02
[gaim-migrate @ 3227]
Mark Doliner <markdoliner@pidgin.im>
parents:
3141
diff
changeset
|
1165 | faim_export fu32_t aim_ssi_getpresence(struct aim_ssi_item *list); |
|
4238
d689819722e1
[gaim-migrate @ 4484]
Mark Doliner <markdoliner@pidgin.im>
parents:
4230
diff
changeset
|
1166 | faim_export char *aim_ssi_getalias(struct aim_ssi_item *list, const char *gn, const char *sn); |
|
4243
c82865915d79
[gaim-migrate @ 4493]
Mark Doliner <markdoliner@pidgin.im>
parents:
4238
diff
changeset
|
1167 | faim_export int aim_ssi_waitingforauth(struct aim_ssi_item *list, const char *gn, const char *sn); |
|
4230
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1168 | |
|
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1169 | /* Client functions for changing SSI data */ |
|
4889
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1170 | faim_export int aim_ssi_addbuddy(aim_session_t *sess, const char *name, const char *group, const char *alias, const char *comment, const char *smsnum, int needauth); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1171 | faim_export int aim_ssi_addpermit(aim_session_t *sess, const char *name); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1172 | faim_export int aim_ssi_adddeny(aim_session_t *sess, const char *name); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1173 | faim_export int aim_ssi_delbuddy(aim_session_t *sess, const char *name, const char *group); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1174 | faim_export int aim_ssi_delpermit(aim_session_t *sess, const char *name); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1175 | faim_export int aim_ssi_deldeny(aim_session_t *sess, const char *name); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1176 | faim_export int aim_ssi_movebuddy(aim_session_t *sess, const char *oldgn, const char *newgn, const char *sn); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1177 | faim_export int aim_ssi_aliasbuddy(aim_session_t *sess, const char *gn, const char *sn, const char *alias); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1178 | faim_export int aim_ssi_rename_group(aim_session_t *sess, const char *oldgn, const char *newgn); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1179 | faim_export int aim_ssi_cleanlist(aim_session_t *sess); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1180 | faim_export int aim_ssi_deletelist(aim_session_t *sess); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1181 | faim_export int aim_ssi_setpermdeny(aim_session_t *sess, fu8_t permdeny, fu32_t vismask); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1182 | faim_export int aim_ssi_setpresence(aim_session_t *sess, fu32_t presence); |
|
9c81754db28e
[gaim-migrate @ 5219]
Mark Doliner <markdoliner@pidgin.im>
parents:
4870
diff
changeset
|
1183 | faim_export int aim_ssi_seticon(aim_session_t *sess, fu8_t *iconsum, fu16_t iconsumlen); |
| 2991 | 1184 | |
|
4230
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1185 | |
|
b5393db78439
[gaim-migrate @ 4475]
Mark Doliner <markdoliner@pidgin.im>
parents:
4194
diff
changeset
|
1186 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1187 | /* 0x0015 - icq.c */ |
|
4624
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1188 | #define AIM_ICQ_INFO_SIMPLE 0x001 |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1189 | #define AIM_ICQ_INFO_SUMMARY 0x002 |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1190 | #define AIM_ICQ_INFO_EMAIL 0x004 |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1191 | #define AIM_ICQ_INFO_PERSONAL 0x008 |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1192 | #define AIM_ICQ_INFO_ADDITIONAL 0x010 |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1193 | #define AIM_ICQ_INFO_WORK 0x020 |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1194 | #define AIM_ICQ_INFO_INTERESTS 0x040 |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1195 | #define AIM_ICQ_INFO_ORGS 0x080 |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1196 | #define AIM_ICQ_INFO_UNKNOWN 0x100 |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1197 | #define AIM_ICQ_INFO_HAVEALL 0x1ff |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1198 | |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1199 | struct aim_icq_offlinemsg { |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1200 | fu32_t sender; |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1201 | fu16_t year; |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1202 | fu8_t month, day, hour, minute; |
|
4173
e2528bd24e6f
[gaim-migrate @ 4403]
Mark Doliner <markdoliner@pidgin.im>
parents:
4151
diff
changeset
|
1203 | fu8_t type; |
|
e2528bd24e6f
[gaim-migrate @ 4403]
Mark Doliner <markdoliner@pidgin.im>
parents:
4151
diff
changeset
|
1204 | fu8_t flags; |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1205 | char *msg; |
|
4076
563a1af15501
[gaim-migrate @ 4291]
Mark Doliner <markdoliner@pidgin.im>
parents:
4071
diff
changeset
|
1206 | int msglen; |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1207 | }; |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1208 | |
|
4151
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1209 | struct aim_icq_info { |
|
4624
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1210 | fu16_t reqid; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1211 | |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1212 | /* simple */ |
|
2742
2ffd839888a5
[gaim-migrate @ 2755]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2734
diff
changeset
|
1213 | fu32_t uin; |
|
4624
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1214 | |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1215 | /* general and "home" information (0x00c8) */ |
|
2742
2ffd839888a5
[gaim-migrate @ 2755]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2734
diff
changeset
|
1216 | char *nick; |
|
2ffd839888a5
[gaim-migrate @ 2755]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2734
diff
changeset
|
1217 | char *first; |
|
2ffd839888a5
[gaim-migrate @ 2755]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2734
diff
changeset
|
1218 | char *last; |
|
2ffd839888a5
[gaim-migrate @ 2755]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2734
diff
changeset
|
1219 | char *email; |
|
4151
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1220 | char *homecity; |
|
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1221 | char *homestate; |
|
4624
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1222 | char *homephone; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1223 | char *homefax; |
|
4151
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1224 | char *homeaddr; |
|
4624
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1225 | char *mobile; |
|
4151
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1226 | char *homezip; |
|
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1227 | fu16_t homecountry; |
|
4624
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1228 | /* fu8_t timezone; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1229 | fu8_t hideemail; */ |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1230 | |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1231 | /* personal (0x00dc) */ |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1232 | fu8_t age; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1233 | fu8_t unknown; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1234 | fu8_t gender; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1235 | char *personalwebpage; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1236 | fu16_t birthyear; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1237 | fu8_t birthmonth; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1238 | fu8_t birthday; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1239 | fu8_t language1; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1240 | fu8_t language2; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1241 | fu8_t language3; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1242 | |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1243 | /* work (0x00d2) */ |
|
4151
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1244 | char *workcity; |
|
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1245 | char *workstate; |
|
4624
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1246 | char *workphone; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1247 | char *workfax; |
|
4151
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1248 | char *workaddr; |
|
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1249 | char *workzip; |
|
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1250 | fu16_t workcountry; |
|
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1251 | char *workcompany; |
|
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1252 | char *workdivision; |
|
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1253 | char *workposition; |
|
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1254 | char *workwebpage; |
|
4624
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1255 | |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1256 | /* additional personal information (0x00e6) */ |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1257 | char *info; |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1258 | |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1259 | /* email (0x00eb) */ |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1260 | fu16_t numaddresses; |
|
4625
f5b87130e1c4
[gaim-migrate @ 4916]
Mark Doliner <markdoliner@pidgin.im>
parents:
4624
diff
changeset
|
1261 | char **email2; |
|
4624
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1262 | |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1263 | /* we keep track of these in a linked list because we're 1337 */ |
|
8bf85f27e60c
[gaim-migrate @ 4915]
Mark Doliner <markdoliner@pidgin.im>
parents:
4617
diff
changeset
|
1264 | struct aim_icq_info *next; |
|
2742
2ffd839888a5
[gaim-migrate @ 2755]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2734
diff
changeset
|
1265 | }; |
|
2ffd839888a5
[gaim-migrate @ 2755]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2734
diff
changeset
|
1266 | |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1267 | faim_export int aim_icq_reqofflinemsgs(aim_session_t *sess); |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1268 | faim_export int aim_icq_ackofflinemsgs(aim_session_t *sess); |
|
4664
1f5d72a07e64
[gaim-migrate @ 4975]
Mark Doliner <markdoliner@pidgin.im>
parents:
4662
diff
changeset
|
1269 | faim_export int aim_icq_hideip(aim_session_t *sess); |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1270 | faim_export int aim_icq_changepasswd(aim_session_t *sess, const char *passwd); |
|
2742
2ffd839888a5
[gaim-migrate @ 2755]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2734
diff
changeset
|
1271 | faim_export int aim_icq_getsimpleinfo(aim_session_t *sess, const char *uin); |
|
4759
5a8c326b49b3
[gaim-migrate @ 5076]
Mark Doliner <markdoliner@pidgin.im>
parents:
4664
diff
changeset
|
1272 | faim_export int aim_icq_getalias(aim_session_t *sess, const char *uin); |
|
4151
29004a3d21a0
[gaim-migrate @ 4377]
Mark Doliner <markdoliner@pidgin.im>
parents:
4102
diff
changeset
|
1273 | faim_export int aim_icq_getallinfo(aim_session_t *sess, const char *uin); |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1274 | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1275 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1276 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1277 | /* 0x0017 - auth.c */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1278 | faim_export int aim_sendcookie(aim_session_t *, aim_conn_t *, const fu16_t length, const fu8_t *); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1279 | faim_export int aim_admin_changepasswd(aim_session_t *, aim_conn_t *, const char *newpw, const char *curpw); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1280 | faim_export int aim_admin_reqconfirm(aim_session_t *sess, aim_conn_t *conn); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1281 | faim_export int aim_admin_getinfo(aim_session_t *sess, aim_conn_t *conn, fu16_t info); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1282 | faim_export int aim_admin_setemail(aim_session_t *sess, aim_conn_t *conn, const char *newemail); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1283 | faim_export int aim_admin_setnick(aim_session_t *sess, aim_conn_t *conn, const char *newnick); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1284 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1285 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1286 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1287 | /* 0x0018 - email.c */ |
|
3694
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1288 | struct aim_emailinfo { |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1289 | fu8_t *cookie16; |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1290 | fu8_t *cookie8; |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1291 | char *url; |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1292 | fu16_t nummsgs; |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1293 | fu8_t unread; |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1294 | char *domain; |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1295 | fu16_t flag; |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1296 | struct aim_emailinfo *next; |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1297 | }; |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1298 | |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1299 | faim_export int aim_email_sendcookies(aim_session_t *sess, aim_conn_t *conn); |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1300 | faim_export int aim_email_activate(aim_session_t *sess, aim_conn_t *conn); |
|
49a336931cc6
[gaim-migrate @ 3824]
Mark Doliner <markdoliner@pidgin.im>
parents:
3630
diff
changeset
|
1301 | |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1302 | |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1303 | |
|
4901
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1304 | /* tlv.c - TLV handling */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1305 | #if defined(FAIM_INTERNAL) || defined(FAIM_NEED_TLV) |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1306 | /* Generic TLV structure. */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1307 | typedef struct aim_tlv_s { |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1308 | fu16_t type; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1309 | fu16_t length; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1310 | fu8_t *value; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1311 | } aim_tlv_t; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1312 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1313 | /* List of above. */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1314 | typedef struct aim_tlvlist_s { |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1315 | aim_tlv_t *tlv; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1316 | struct aim_tlvlist_s *next; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1317 | } aim_tlvlist_t; |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1318 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1319 | /* TLV-handling functions */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1320 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1321 | #if 0 |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1322 | /* Very, very raw TLV handling. */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1323 | faim_internal int aim_puttlv_8(fu8_t *buf, const fu16_t t, const fu8_t v); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1324 | faim_internal int aim_puttlv_16(fu8_t *buf, const fu16_t t, const fu16_t v); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1325 | faim_internal int aim_puttlv_32(fu8_t *buf, const fu16_t t, const fu32_t v); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1326 | faim_internal int aim_puttlv_raw(fu8_t *buf, const fu16_t t, const fu16_t l, const fu8_t *v); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1327 | #endif |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1328 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1329 | /* TLV list handling. */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1330 | faim_internal aim_tlvlist_t *aim_readtlvchain(aim_bstream_t *bs); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1331 | faim_internal aim_tlvlist_t *aim_readtlvchain_num(aim_bstream_t *bs, fu16_t num); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1332 | faim_internal aim_tlvlist_t *aim_readtlvchain_len(aim_bstream_t *bs, fu16_t len); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1333 | faim_internal aim_tlvlist_t *aim_tlvlist_copy(aim_tlvlist_t *orig); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1334 | faim_internal void aim_freetlvchain(aim_tlvlist_t **list); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1335 | faim_internal aim_tlv_t *aim_gettlv(aim_tlvlist_t *, fu16_t t, const int n); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1336 | faim_internal char *aim_gettlv_str(aim_tlvlist_t *, const fu16_t t, const int n); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1337 | faim_internal fu8_t aim_gettlv8(aim_tlvlist_t *list, const fu16_t type, const int num); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1338 | faim_internal fu16_t aim_gettlv16(aim_tlvlist_t *list, const fu16_t t, const int n); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1339 | faim_internal fu32_t aim_gettlv32(aim_tlvlist_t *list, const fu16_t t, const int n); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1340 | faim_internal int aim_writetlvchain(aim_bstream_t *bs, aim_tlvlist_t **list); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1341 | faim_internal int aim_addtlvtochain8(aim_tlvlist_t **list, const fu16_t t, const fu8_t v); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1342 | faim_internal int aim_addtlvtochain16(aim_tlvlist_t **list, const fu16_t t, const fu16_t v); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1343 | faim_internal int aim_addtlvtochain32(aim_tlvlist_t **list, const fu16_t type, const fu32_t v); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1344 | faim_internal int aim_addtlvtochain_raw(aim_tlvlist_t **list, const fu16_t t, const fu16_t l, const fu8_t *v); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1345 | faim_internal int aim_addtlvtochain_caps(aim_tlvlist_t **list, const fu16_t t, const fu32_t caps); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1346 | faim_internal int aim_addtlvtochain_noval(aim_tlvlist_t **list, const fu16_t type); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1347 | faim_internal int aim_addtlvtochain_userinfo(aim_tlvlist_t **list, fu16_t type, aim_userinfo_t *ui); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1348 | faim_internal int aim_addtlvtochain_frozentlvlist(aim_tlvlist_t **list, fu16_t type, aim_tlvlist_t **tl); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1349 | faim_internal int aim_counttlvchain(aim_tlvlist_t **list); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1350 | faim_internal int aim_sizetlvchain(aim_tlvlist_t **list); |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1351 | #endif /* FAIM_INTERNAL */ |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1352 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1353 | |
|
8a9aebd9897f
[gaim-migrate @ 5235]
Mark Doliner <markdoliner@pidgin.im>
parents:
4898
diff
changeset
|
1354 | |
|
3912
334ebe7e5f93
[gaim-migrate @ 4071]
Mark Doliner <markdoliner@pidgin.im>
parents:
3867
diff
changeset
|
1355 | /* util.c */ |
| 2086 | 1356 | /* |
| 1357 | * These are really ugly. You'd think this was LISP. I wish it was. | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1358 | * |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1359 | * XXX With the advent of bstream's, these should be removed to enforce |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1360 | * their use. |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1361 | * |
| 2086 | 1362 | */ |
| 1363 | #define aimutil_put8(buf, data) ((*(buf) = (u_char)(data)&0xff),1) | |
| 1364 | #define aimutil_get8(buf) ((*(buf))&0xff) | |
| 1365 | #define aimutil_put16(buf, data) ( \ | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1366 | (*(buf) = (u_char)((data)>>8)&0xff), \ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1367 | (*((buf)+1) = (u_char)(data)&0xff), \ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1368 | 2) |
| 2086 | 1369 | #define aimutil_get16(buf) ((((*(buf))<<8)&0xff00) + ((*((buf)+1)) & 0xff)) |
| 1370 | #define aimutil_put32(buf, data) ( \ | |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1371 | (*((buf)) = (u_char)((data)>>24)&0xff), \ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1372 | (*((buf)+1) = (u_char)((data)>>16)&0xff), \ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1373 | (*((buf)+2) = (u_char)((data)>>8)&0xff), \ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1374 | (*((buf)+3) = (u_char)(data)&0xff), \ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1375 | 4) |
| 2086 | 1376 | #define aimutil_get32(buf) ((((*(buf))<<24)&0xff000000) + \ |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1377 | (((*((buf)+1))<<16)&0x00ff0000) + \ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1378 | (((*((buf)+2))<< 8)&0x0000ff00) + \ |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2196
diff
changeset
|
1379 | (((*((buf)+3) )&0x000000ff))) |
| 2086 | 1380 | |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1381 | /* Little-endian versions (damn ICQ) */ |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1382 | #define aimutil_putle8(buf, data) ( \ |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
1383 | (*(buf) = (fu8_t)(data) & 0xff), \ |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1384 | 1) |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1385 | #define aimutil_getle8(buf) ( \ |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1386 | (*(buf)) & 0xff \ |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1387 | ) |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1388 | #define aimutil_putle16(buf, data) ( \ |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
1389 | (*((buf)+0) = (fu8_t)((data) >> 0) & 0xff), \ |
|
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
1390 | (*((buf)+1) = (fu8_t)((data) >> 8) & 0xff), \ |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1391 | 2) |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1392 | #define aimutil_getle16(buf) ( \ |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1393 | (((*((buf)+0)) << 0) & 0x00ff) + \ |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1394 | (((*((buf)+1)) << 8) & 0xff00) \ |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1395 | ) |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1396 | #define aimutil_putle32(buf, data) ( \ |
|
5556
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
1397 | (*((buf)+0) = (fu8_t)((data) >> 0) & 0xff), \ |
|
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
1398 | (*((buf)+1) = (fu8_t)((data) >> 8) & 0xff), \ |
|
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
1399 | (*((buf)+2) = (fu8_t)((data) >> 16) & 0xff), \ |
|
5d64702e975b
[gaim-migrate @ 5957]
Mark Doliner <markdoliner@pidgin.im>
parents:
5414
diff
changeset
|
1400 | (*((buf)+3) = (fu8_t)((data) >> 24) & 0xff), \ |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1401 | 4) |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1402 | #define aimutil_getle32(buf) ( \ |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1403 | (((*((buf)+0)) << 0) & 0x000000ff) + \ |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1404 | (((*((buf)+1)) << 8) & 0x0000ff00) + \ |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1405 | (((*((buf)+2)) << 16) & 0x00ff0000) + \ |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1406 | (((*((buf)+3)) << 24) & 0xff000000)) |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1407 | |
|
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2704
diff
changeset
|
1408 | |
| 2086 | 1409 | faim_export int aimutil_putstr(u_char *, const char *, int); |
|
4617
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1410 | faim_export fu16_t aimutil_iconsum(const fu8_t *buf, int buflen); |
|
35d860860593
[gaim-migrate @ 4908]
Mark Doliner <markdoliner@pidgin.im>
parents:
4342
diff
changeset
|
1411 | faim_export int aim_util_getlocalip(fu8_t *ip); |
| 2086 | 1412 | faim_export int aimutil_tokslen(char *toSearch, int index, char dl); |
| 1413 | faim_export int aimutil_itemcnt(char *toSearch, char dl); | |
| 1414 | faim_export char *aimutil_itemidx(char *toSearch, int index, char dl); | |
| 1415 | ||
| 1416 | faim_export int aim_snlen(const char *sn); | |
| 1417 | faim_export int aim_sncmp(const char *sn1, const char *sn2); | |
| 1418 | ||
| 1419 | #include <aim_internal.h> | |
| 1420 | ||
| 1421 | #endif /* __AIM_H__ */ |