Fri, 01 Dec 2000 23:01:36 +0000
[gaim-migrate @ 1194]
libfaim updates.
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
1 | /* |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
2 | * Cookie Caching stuff. Adam wrote this, apparently just some |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
3 | * derivatives of n's SNAC work. I cleaned it up, added comments. |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
4 | * |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
5 | * I'm going to rewrite this stuff eventually, honest. -jbm |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
6 | * |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
7 | */ |
| 338 | 8 | |
| 9 | /* | |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
10 | * I'm assuming that cookies are type-specific. that is, we can have |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
11 | * "1234578" for type 1 and type 2 concurrently. if i'm wrong, then we |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
12 | * lose some error checking. if we assume cookies are not type-specific and are |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
13 | * wrong, we get quirky behavior when cookies step on each others' toes. |
| 338 | 14 | */ |
| 15 | ||
| 16 | #include <faim/aim.h> | |
| 17 | ||
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
18 | /* |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
19 | * aim_cachecookie: |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
20 | * appends a cookie to the cookie list for sess. |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
21 | * - if cookie->cookie for type cookie->type is found, addtime is updated. |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
22 | * - copies cookie struct; you need to free() it afterwards; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
23 | * - cookie->data is not copied, but passed along. don't free it. |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
24 | * - newcook->addtime is updated accordingly; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
25 | * - cookie->type is just passed across. |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
26 | * |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
27 | * returns -1 on error, 0 on success. |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
28 | */ |
|
840
b80a628d935f
[gaim-migrate @ 850]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
503
diff
changeset
|
29 | faim_internal int aim_cachecookie(struct aim_session_t *sess, |
|
b80a628d935f
[gaim-migrate @ 850]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
503
diff
changeset
|
30 | struct aim_msgcookie_t *cookie) |
| 338 | 31 | { |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
32 | struct aim_msgcookie_t *newcook; |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
33 | |
| 338 | 34 | if (!cookie) |
| 35 | return -1; | |
| 36 | ||
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
37 | if( (newcook = aim_checkcookie(sess, cookie->cookie, cookie->type)) ) { |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
38 | newcook->addtime = time(NULL); |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
39 | if(cookie->data != newcook->data) { |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
40 | |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
41 | printf("faim: cachecookie: matching cookie/type pair " |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
42 | "%x%x%x%x%x%x%x%x/%x has different *data. free()ing cookie copy..\n", |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
43 | cookie->cookie[0], cookie->cookie[1], cookie->cookie[2], |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
44 | cookie->cookie[3], cookie->cookie[4], cookie->cookie[5], |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
45 | cookie->cookie[6], cookie->cookie[7], cookie->type); |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
46 | |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
47 | free(cookie->data); |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
48 | } |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
49 | |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
50 | return 0; |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
51 | } |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
52 | |
| 338 | 53 | if (!(newcook = malloc(sizeof(struct aim_msgcookie_t)))) |
| 54 | return -1; | |
| 55 | memcpy(newcook, cookie, sizeof(struct aim_msgcookie_t)); | |
| 56 | newcook->addtime = time(NULL); | |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
57 | |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
58 | newcook->next = sess->msgcookies; |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
59 | sess->msgcookies = newcook; |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
60 | |
| 338 | 61 | return 0; |
| 62 | } | |
| 63 | ||
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
64 | /* |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
65 | * aim_uncachecookie: |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
66 | * takes a cookie string and grabs the cookie struct associated with |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
67 | * it. removes struct from chain. returns the struct if found, or |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
68 | * NULL on not found. |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
69 | */ |
|
840
b80a628d935f
[gaim-migrate @ 850]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
503
diff
changeset
|
70 | faim_internal struct aim_msgcookie_t *aim_uncachecookie(struct aim_session_t *sess, unsigned char *cookie, int type) |
| 338 | 71 | { |
| 72 | struct aim_msgcookie_t *cur; | |
| 73 | ||
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
74 | if (!cookie || !sess->msgcookies) |
| 338 | 75 | return NULL; |
| 76 | ||
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
77 | if ((sess->msgcookies->type == type) && |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
78 | (memcmp(sess->msgcookies->cookie, cookie, 8) == 0)) { |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
79 | struct aim_msgcookie_t *tmp; |
| 338 | 80 | |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
81 | tmp = sess->msgcookies; |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
82 | sess->msgcookies = sess->msgcookies->next; |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
83 | |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
84 | return tmp; |
| 338 | 85 | } |
| 86 | ||
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
87 | for (cur = sess->msgcookies; cur->next; cur = cur->next) { |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
88 | if ((cur->next->type == type) && |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
89 | (memcmp(cur->next->cookie, cookie, 8) == 0)) { |
| 338 | 90 | struct aim_msgcookie_t *tmp; |
| 91 | ||
| 92 | tmp = cur->next; | |
| 93 | cur->next = cur->next->next; | |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
94 | |
| 338 | 95 | return tmp; |
| 96 | } | |
| 97 | } | |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
98 | |
| 338 | 99 | return NULL; |
| 100 | } | |
| 101 | ||
| 102 | /* | |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
103 | * aim_purgecookies: |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
104 | * purge out old cookies |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
105 | * |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
106 | * finds old cookies, calls uncache on them. |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
107 | * |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
108 | * this is highly inefficient, but It Works. and i don't feel like |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
109 | * totally rewriting this. it might have some concurrency issues as |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
110 | * well, if i rewrite it. |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
111 | * |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
112 | * i'll avoid the puns. |
| 338 | 113 | */ |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
114 | |
|
840
b80a628d935f
[gaim-migrate @ 850]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
503
diff
changeset
|
115 | faim_export int aim_purgecookies(struct aim_session_t *sess, int maxage) |
| 338 | 116 | { |
| 117 | struct aim_msgcookie_t *cur; | |
| 118 | time_t curtime; | |
| 119 | ||
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
120 | curtime = time(NULL); |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
121 | |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
122 | for (cur = sess->msgcookies; cur; cur = cur->next) { |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
123 | if (cur->addtime > (time(NULL) - maxage)) { |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
124 | struct aim_msgcookie_t *remed = NULL; |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
125 | |
| 338 | 126 | #if DEBUG > 1 |
| 127 | printf("aimmsgcookie: WARNING purged obsolete message cookie %x%x%x%x %x%x%x%x\n", | |
| 128 | cur->cookie[0], cur->cookie[1], cur->cookie[2], cur->cookie[3], | |
| 129 | cur->cookie[4], cur->cookie[5], cur->cookie[6], cur->cookie[7]); | |
| 130 | #endif | |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
131 | |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
132 | remed = aim_uncachecookie(sess, cur->cookie, cur->type); |
| 338 | 133 | if (remed) { |
| 134 | if (remed->data) | |
| 135 | free(remed->data); | |
| 136 | free(remed); | |
| 137 | } | |
| 138 | } | |
| 139 | } | |
| 140 | ||
| 141 | return 0; | |
| 142 | } | |
| 143 | ||
|
840
b80a628d935f
[gaim-migrate @ 850]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
503
diff
changeset
|
144 | faim_internal struct aim_msgcookie_t *aim_mkcookie(unsigned char *c, int type, void *data) |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
145 | { |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
146 | struct aim_msgcookie_t *cookie; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
147 | |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
148 | if (!c) |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
149 | return NULL; |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
150 | |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
151 | if (!(cookie = calloc(1, sizeof(struct aim_msgcookie_t)))) |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
152 | return NULL; |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
153 | |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
154 | cookie->data = data; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
155 | cookie->type = type; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
156 | memcpy(cookie->cookie, c, 8); |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
157 | |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
158 | return cookie; |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
159 | } |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
160 | |
|
840
b80a628d935f
[gaim-migrate @ 850]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
503
diff
changeset
|
161 | faim_internal struct aim_msgcookie_t *aim_checkcookie(struct aim_session_t *sess, unsigned char *cookie, int type) |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
162 | { |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
163 | struct aim_msgcookie_t *cur; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
164 | |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
165 | for (cur = sess->msgcookies; cur; cur = cur->next) { |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
166 | if ((cur->type == type) && |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
167 | (memcmp(cur->cookie, cookie, 8) == 0)) |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
168 | return cur; |
|
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
169 | } |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
170 | |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
171 | return NULL; |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
172 | } |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
173 | |
|
840
b80a628d935f
[gaim-migrate @ 850]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
503
diff
changeset
|
174 | static int aim_freecookie(struct aim_msgcookie_t *cookie) { |
|
1184
e475cddf904d
[gaim-migrate @ 1194]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
840
diff
changeset
|
175 | return 0; |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
176 | } |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
177 | |
|
840
b80a628d935f
[gaim-migrate @ 850]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
503
diff
changeset
|
178 | faim_internal int aim_msgcookie_gettype(int reqclass) { |
|
503
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
179 | /* XXX: hokey-assed. needs fixed. */ |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
180 | switch(reqclass) { |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
181 | case AIM_CAPS_BUDDYICON: |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
182 | return AIM_COOKIETYPE_OFTICON; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
183 | break; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
184 | case AIM_CAPS_VOICE: |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
185 | return AIM_COOKIETYPE_OFTVOICE; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
186 | break; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
187 | case AIM_CAPS_IMIMAGE: |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
188 | return AIM_COOKIETYPE_OFTIMAGE; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
189 | break; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
190 | case AIM_CAPS_CHAT: |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
191 | return AIM_COOKIETYPE_CHAT; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
192 | break; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
193 | case AIM_CAPS_GETFILE: |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
194 | return AIM_COOKIETYPE_OFTGET; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
195 | break; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
196 | case AIM_CAPS_SENDFILE: |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
197 | return AIM_COOKIETYPE_OFTSEND; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
198 | break; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
199 | default: |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
200 | return AIM_COOKIETYPE_UNKNOWN; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
201 | break; |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
202 | } |
|
308fa214f11a
[gaim-migrate @ 513]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
338
diff
changeset
|
203 | } |