Mercurial > pidgin
annotate src/server.c @ 268:f8a29745247c
[gaim-migrate @ 278]
Two star college football players need to pass the final to play in the big
game. The professor loves football, but knows these guys aren't the brightest
bulbs in teh box, so he gives them a special final, puts them in a room by
themselves, and gives them an hour.
The guys look at each other, and start in on the final, which has only one
question: "What did Old MacDonald have?"
One guy looks at the other and says, "Do you know the answer to this?"
The other guy says, "Duh, a farm."
"How do you spell that?"
"Stupid! EIEIO!"
committer: Tailor Script <tailor@pidgin.im>
| author | Eric Warmenhoven <eric@warmenhoven.org> |
|---|---|
| date | Thu, 25 May 2000 18:58:21 +0000 |
| parents | 59f1748b09a6 |
| children | cfa39d39dec6 |
| rev | line source |
|---|---|
| 1 | 1 /* |
| 2 * gaim | |
| 3 * | |
| 4 * Copyright (C) 1998-1999, Mark Spencer <markster@marko.net> | |
| 5 * | |
| 6 * This program is free software; you can redistribute it and/or modify | |
| 7 * it under the terms of the GNU General Public License as published by | |
| 8 * the Free Software Foundation; either version 2 of the License, or | |
| 9 * (at your option) any later version. | |
| 10 * | |
| 11 * This program is distributed in the hope that it will be useful, | |
| 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 * GNU General Public License for more details. | |
| 15 * | |
| 16 * You should have received a copy of the GNU General Public License | |
| 17 * along with this program; if not, write to the Free Software | |
| 18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
| 19 * | |
| 20 */ | |
| 21 | |
| 22 #include <time.h> | |
| 23 #include <stdio.h> | |
| 24 #include <string.h> | |
| 25 #include <sys/types.h> | |
| 26 #include <sys/stat.h> | |
| 27 #include <sys/time.h> | |
| 28 #include <unistd.h> | |
| 29 #include <gtk/gtk.h> | |
| 30 #ifdef USE_OSCAR | |
| 31 #include "../libfaim/aim.h" | |
| 32 #endif | |
| 33 #include "gaim.h" | |
| 34 | |
| 35 static int idle_timer = -1; | |
| 36 static time_t lastsent = 0; | |
| 37 static time_t login_time = 0; | |
| 38 static struct timeval lag_tv; | |
| 39 static int is_idle = 0; | |
| 40 | |
| 41 int correction_time = 0; | |
| 42 | |
| 43 int serv_login(char *username, char *password) | |
| 44 { | |
| 45 #ifndef USE_OSCAR | |
| 46 return toc_login(username, password); | |
| 47 #else | |
| 48 return oscar_login(username, password); | |
| 49 #endif | |
| 50 } | |
| 51 | |
| 52 void serv_close() | |
| 53 { | |
| 54 #ifndef USE_OSCAR | |
| 55 toc_close(); | |
|
242
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
56 #else |
|
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
57 oscar_close(); |
| 1 | 58 #endif |
| 59 gtk_timeout_remove(idle_timer); | |
| 60 idle_timer = -1; | |
| 61 } | |
| 62 | |
| 63 | |
| 64 void serv_touch_idle() | |
| 65 { | |
| 66 /* Are we idle? If so, not anymore */ | |
| 67 if (is_idle > 0) { | |
| 68 is_idle = 0; | |
| 69 serv_set_idle(0); | |
| 70 } | |
| 71 time(&lastsent); | |
| 72 } | |
| 73 | |
| 74 | |
| 75 static gint check_idle() | |
| 76 { | |
| 77 time_t t; | |
| 78 | |
| 79 /* Not idle, really... :) */ | |
| 80 update_all_buddies(); | |
| 81 | |
| 82 time(&t); | |
| 83 | |
| 84 gettimeofday(&lag_tv, NULL); | |
|
171
789c792ed14b
[gaim-migrate @ 181]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
145
diff
changeset
|
85 if (general_options & OPT_GEN_SHOW_LAGMETER) |
|
181
f2d631f867a3
[gaim-migrate @ 191]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
171
diff
changeset
|
86 serv_send_im(current_user->username, LAGOMETER_STR, 1); |
| 1 | 87 |
| 88 if (report_idle != IDLE_GAIM) | |
| 89 return TRUE; | |
| 90 | |
| 91 | |
| 92 if (is_idle) | |
| 93 return TRUE; | |
| 94 | |
| 95 if ((t - lastsent) > 600) { /* 15 minutes! */ | |
| 96 serv_set_idle((int)t - lastsent); | |
| 97 is_idle = 1; | |
| 98 } | |
| 99 | |
|
115
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
100 #ifdef GAIM_PLUGINS |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
101 { |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
102 GList *c = callbacks; |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
103 struct gaim_callback *g; |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
104 void (*function)(void *); |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
105 while (c) { |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
106 g = (struct gaim_callback *)c->data; |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
107 if (g->event == event_blist_update && |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
108 g->function != NULL) { |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
109 function = g->function; |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
110 (*function)(g->data); |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
111 } |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
112 c = c->next; |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
113 } |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
114 } |
|
890cfb7d8fdb
[gaim-migrate @ 125]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
101
diff
changeset
|
115 #endif |
| 1 | 116 |
| 117 return TRUE; | |
| 118 | |
| 119 } | |
| 120 | |
| 121 | |
| 122 void serv_finish_login() | |
| 123 { | |
| 124 char *buf; | |
| 125 | |
| 126 if (strlen(current_user->user_info)) { | |
| 79 | 127 buf = g_malloc(strlen(current_user->user_info) * 4); |
| 1 | 128 strcpy(buf, current_user->user_info); |
| 129 escape_text(buf); | |
| 130 serv_set_info(buf); | |
| 131 g_free(buf); | |
| 132 } | |
| 133 | |
| 134 if (idle_timer != -1) | |
| 135 gtk_timeout_remove(idle_timer); | |
| 136 | |
| 137 idle_timer = gtk_timeout_add(20000, (GtkFunction)check_idle, NULL); | |
| 138 serv_touch_idle(); | |
| 139 | |
| 140 time(&login_time); | |
| 141 | |
| 142 serv_add_buddy(current_user->username); | |
| 143 | |
| 144 if (!(general_options & OPT_GEN_REGISTERED)) | |
| 145 { | |
| 146 show_register_dialog(); | |
| 147 save_prefs(); | |
| 148 } | |
| 149 } | |
| 150 | |
| 151 | |
| 152 | |
| 153 void serv_send_im(char *name, char *message, int away) | |
| 154 { | |
| 155 char buf[MSG_LEN - 7]; | |
|
94
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
156 |
| 1 | 157 #ifndef USE_OSCAR |
| 158 g_snprintf(buf, MSG_LEN - 8, "toc_send_im %s \"%s\"%s", normalize(name), | |
| 159 message, ((away) ? " auto" : "")); | |
| 160 sflap_send(buf, strlen(buf), TYPE_DATA); | |
| 161 #else | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
162 oscar_send_im(name, message, away); |
| 1 | 163 #endif |
| 164 if (!away) | |
| 165 serv_touch_idle(); | |
| 166 } | |
| 167 | |
| 168 void serv_get_info(char *name) | |
| 169 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
170 char buf[MSG_LEN]; |
| 1 | 171 #ifndef USE_OSCAR |
| 172 g_snprintf(buf, MSG_LEN, "toc_get_info %s", normalize(name)); | |
| 173 sflap_send(buf, -1, TYPE_DATA); | |
|
243
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
174 #else |
|
249
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
175 aim_getinfo(gaim_sess, gaim_conn, name, AIM_GETINFO_GENERALINFO); |
|
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
176 #endif |
|
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
177 } |
|
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
178 |
|
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
179 void serv_get_away_msg(char *name) |
|
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
180 { |
|
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
181 char buf[MSG_LEN]; |
|
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
182 #ifndef USE_OSCAR |
|
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
183 /* HAHA! TOC doesn't have this yet */ |
|
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
184 #else |
|
810c595258c8
[gaim-migrate @ 259]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
248
diff
changeset
|
185 aim_getinfo(gaim_sess, gaim_conn, name, AIM_GETINFO_AWAYMESSAGE); |
| 1 | 186 #endif |
| 187 } | |
| 188 | |
| 189 void serv_get_dir(char *name) | |
| 190 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
191 char buf[MSG_LEN]; |
| 1 | 192 #ifndef USE_OSCAR |
| 193 g_snprintf(buf, MSG_LEN, "toc_get_dir %s", normalize(name)); | |
| 194 sflap_send(buf, -1, TYPE_DATA); | |
| 195 #endif | |
| 196 } | |
| 197 | |
| 198 void serv_set_dir(char *first, char *middle, char *last, char *maiden, | |
| 199 char *city, char *state, char *country, int web) | |
| 200 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
201 char buf2[BUF_LEN*4], buf[BUF_LEN]; |
| 1 | 202 #ifndef USE_OSCAR |
| 203 g_snprintf(buf2, sizeof(buf2), "%s:%s:%s:%s:%s:%s:%s:%s", first, | |
| 204 middle, last, maiden, city, state, country, | |
| 205 (web == 1) ? "Y" : ""); | |
| 206 escape_text(buf2); | |
| 207 g_snprintf(buf, sizeof(buf), "toc_set_dir %s", buf2); | |
| 208 sflap_send(buf, -1, TYPE_DATA); | |
| 209 #endif | |
| 210 } | |
| 211 | |
| 212 void serv_dir_search(char *first, char *middle, char *last, char *maiden, | |
| 213 char *city, char *state, char *country, char *email) | |
| 214 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
215 char buf[BUF_LONG]; |
| 1 | 216 #ifndef USE_OSCAR |
| 217 g_snprintf(buf, sizeof(buf)/2, "toc_dir_search %s:%s:%s:%s:%s:%s:%s:%s", first, middle, last, maiden, city, state, country, email); | |
| 218 sprintf(debug_buff,"Searching for: %s,%s,%s,%s,%s,%s,%s\n", first, middle, last, maiden, city, state, country); | |
| 219 debug_print(debug_buff); | |
| 220 sflap_send(buf, -1, TYPE_DATA); | |
|
243
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
221 #else |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
222 if (strlen(email)) |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
223 aim_usersearch_address(gaim_sess, gaim_conn, email); |
| 1 | 224 #endif |
| 225 } | |
| 226 | |
| 227 | |
| 228 void serv_set_away(char *message) | |
| 229 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
230 char buf[MSG_LEN]; |
| 1 | 231 #ifndef USE_OSCAR |
| 232 if (message) | |
| 233 g_snprintf(buf, MSG_LEN, "toc_set_away \"%s\"", message); | |
| 234 else | |
|
200
bc117fbcf527
[gaim-migrate @ 210]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
181
diff
changeset
|
235 g_snprintf(buf, MSG_LEN, "toc_set_away \"\""); |
| 1 | 236 sflap_send(buf, -1, TYPE_DATA); |
|
243
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
237 #else |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
238 aim_bos_setprofile(gaim_sess, gaim_conn, current_user->user_info, |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
239 message, AIM_CAPS_CHAT); |
| 1 | 240 #endif |
| 241 } | |
| 242 | |
| 243 void serv_set_info(char *info) | |
| 244 { | |
| 245 char buf[MSG_LEN]; | |
| 246 #ifndef USE_OSCAR | |
| 247 g_snprintf(buf, sizeof(buf), "toc_set_info \"%s\n\"", info); | |
| 248 sflap_send(buf, -1, TYPE_DATA); | |
|
243
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
249 #else |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
250 if (awaymessage) |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
251 aim_bos_setprofile(gaim_sess, gaim_conn, info, |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
252 awaymessage->message, AIM_CAPS_CHAT); |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
253 else |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
254 aim_bos_setprofile(gaim_sess, gaim_conn, info, |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
255 NULL, AIM_CAPS_CHAT); |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
256 #endif |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
257 } |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
258 |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
259 void serv_change_passwd(char *orig, char *new) { |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
260 #ifndef USE_OSCAR |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
261 char *buf = g_malloc(BUF_LONG); |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
262 g_snprintf(buf, BUF_LONG, "toc_change_passwd %s %s", orig, new); |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
263 sflap_send(buf, strlen(buf), TYPE_DATA); |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
264 g_free(buf); |
| 1 | 265 #endif |
| 266 } | |
| 267 | |
| 268 void serv_add_buddy(char *name) | |
| 269 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
270 char buf[1024]; |
| 1 | 271 #ifndef USE_OSCAR |
| 272 g_snprintf(buf, sizeof(buf), "toc_add_buddy %s", normalize(name)); | |
| 273 sflap_send(buf, -1, TYPE_DATA); | |
|
242
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
274 #else |
|
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
275 aim_add_buddy(gaim_sess, gaim_conn, name); |
| 1 | 276 #endif |
| 277 } | |
| 278 | |
| 279 void serv_add_buddies(GList *buddies) | |
| 280 { | |
| 281 char buf[MSG_LEN]; | |
| 282 int n, num = 0; | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
283 |
| 1 | 284 #ifndef USE_OSCAR |
| 285 n = g_snprintf(buf, sizeof(buf), "toc_add_buddy"); | |
| 286 while(buddies) { | |
| 287 if (num == 20) { | |
| 288 sflap_send(buf, -1, TYPE_DATA); | |
| 289 n = g_snprintf(buf, sizeof(buf), "toc_add_buddy"); | |
| 290 num = 0; | |
| 291 } | |
| 292 ++num; | |
| 293 n += g_snprintf(buf + n, sizeof(buf) - n, " %s", normalize(buddies->data)); | |
| 294 buddies = buddies->next; | |
| 295 } | |
| 296 sflap_send(buf, -1, TYPE_DATA); | |
|
242
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
297 #else |
|
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
298 /* oscar you have to add them one name at a time, except at login */ |
|
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
299 while(buddies) { |
|
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
300 serv_add_buddy((char *)buddies->data); |
|
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
301 buddies = buddies->next; |
|
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
302 } |
| 1 | 303 #endif |
| 304 } | |
| 305 | |
| 306 | |
| 307 void serv_remove_buddy(char *name) | |
| 308 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
309 char buf[1024]; |
| 1 | 310 #ifndef USE_OSCAR |
| 311 g_snprintf(buf, sizeof(buf), "toc_remove_buddy %s", normalize(name)); | |
| 312 sflap_send(buf, -1, TYPE_DATA); | |
|
242
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
313 #else |
|
14fc16f579c8
[gaim-migrate @ 252]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
237
diff
changeset
|
314 aim_remove_buddy(gaim_sess, gaim_conn, name); |
| 1 | 315 #endif |
| 316 } | |
| 317 | |
| 318 void serv_add_permit(char *name) | |
| 319 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
320 char buf[1024]; |
| 1 | 321 #ifndef USE_OSCAR |
| 322 g_snprintf(buf, sizeof(buf), "toc_add_permit %s", normalize(name)); | |
| 323 sflap_send(buf, -1, TYPE_DATA); | |
|
247
f6e8ea29b24f
[gaim-migrate @ 257]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
243
diff
changeset
|
324 #else |
|
f6e8ea29b24f
[gaim-migrate @ 257]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
243
diff
changeset
|
325 serv_set_permit_deny(); |
| 1 | 326 #endif |
| 327 } | |
| 328 | |
| 329 | |
| 330 | |
| 331 void serv_add_deny(char *name) | |
| 332 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
333 char buf[1024]; |
| 1 | 334 #ifndef USE_OSCAR |
| 335 g_snprintf(buf, sizeof(buf), "toc_add_deny %s", normalize(name)); | |
| 336 sflap_send(buf, -1, TYPE_DATA); | |
|
247
f6e8ea29b24f
[gaim-migrate @ 257]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
243
diff
changeset
|
337 #else |
|
f6e8ea29b24f
[gaim-migrate @ 257]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
243
diff
changeset
|
338 serv_set_permit_deny(); |
| 1 | 339 #endif |
| 340 } | |
| 341 | |
| 342 | |
| 343 | |
| 344 void serv_set_permit_deny() | |
| 345 { | |
| 346 char buf[MSG_LEN]; | |
| 347 int at; | |
| 348 GList *list; | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
349 |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
350 #ifndef USE_OSCAR |
| 1 | 351 /* FIXME! We flash here. */ |
| 352 if (permdeny == 1 || permdeny == 3) { | |
| 353 g_snprintf(buf, sizeof(buf), "toc_add_permit"); | |
| 354 sflap_send(buf, -1, TYPE_DATA); | |
| 355 } else { | |
| 356 g_snprintf(buf, sizeof(buf), "toc_add_deny"); | |
| 357 sflap_send(buf, -1, TYPE_DATA); | |
| 358 } | |
| 359 | |
| 360 | |
| 361 at = g_snprintf(buf, sizeof(buf), "toc_add_permit"); | |
| 362 list = permit; | |
| 363 while(list) { | |
| 364 at += g_snprintf(&buf[at], sizeof(buf) - at, " %s", normalize(list->data)); | |
| 365 list = list->next; | |
| 366 } | |
| 367 buf[at] = 0; | |
| 368 sflap_send(buf, -1, TYPE_DATA); | |
| 369 | |
| 370 at = g_snprintf(buf, sizeof(buf), "toc_add_deny"); | |
| 371 list = deny; | |
| 372 while(list) { | |
| 373 at += g_snprintf(&buf[at], sizeof(buf) - at, " %s", normalize(list->data)); | |
| 374 list = list->next; | |
| 375 } | |
| 376 buf[at] = 0; | |
| 377 sflap_send(buf, -1, TYPE_DATA); | |
|
247
f6e8ea29b24f
[gaim-migrate @ 257]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
243
diff
changeset
|
378 #else |
|
f6e8ea29b24f
[gaim-migrate @ 257]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
243
diff
changeset
|
379 /* oscar requires us to do everyone at once (?) */ |
|
265
59f1748b09a6
[gaim-migrate @ 275]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
263
diff
changeset
|
380 /* I think this code is OK now. */ |
|
256
7615d22ad227
[gaim-migrate @ 266]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
253
diff
changeset
|
381 if (!(permdeny == 1 || permdeny == 4)) { |
|
253
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
382 list = permit; at = 0; |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
383 while (list) { |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
384 at += g_snprintf(&buf[at], sizeof(buf) - at, "%s&", list->data); |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
385 list = list->next; |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
386 } |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
387 aim_bos_changevisibility(gaim_sess, gaim_conn, |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
388 AIM_VISIBILITYCHANGE_PERMITADD, buf); |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
389 } else { |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
390 list = deny; at = 0; |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
391 if (list == NULL) return; |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
392 while (list) { |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
393 at += g_snprintf(&buf[at], sizeof(buf) - at, "%s&", list->data); |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
394 list = list->next; |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
395 } |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
396 aim_bos_changevisibility(gaim_sess, gaim_conn, |
|
5b28ef2b550e
[gaim-migrate @ 263]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
252
diff
changeset
|
397 AIM_VISIBILITYCHANGE_DENYADD, buf); |
|
247
f6e8ea29b24f
[gaim-migrate @ 257]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
243
diff
changeset
|
398 } |
| 1 | 399 #endif |
| 400 } | |
| 401 | |
| 402 void serv_set_idle(int time) | |
| 403 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
404 char buf[256]; |
| 1 | 405 #ifndef USE_OSCAR |
| 406 g_snprintf(buf, sizeof(buf), "toc_set_idle %d", time); | |
| 407 sflap_send(buf, -1, TYPE_DATA); | |
|
243
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
408 #else |
|
3414ff74cb0f
[gaim-migrate @ 253]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
242
diff
changeset
|
409 aim_bos_setidle(gaim_sess, gaim_conn, time); |
| 1 | 410 #endif |
| 411 } | |
| 412 | |
| 413 | |
| 414 void serv_warn(char *name, int anon) | |
| 415 { | |
| 416 #ifndef USE_OSCAR | |
| 417 char *send = g_malloc(256); | |
| 418 g_snprintf(send, 255, "toc_evil %s %s", name, | |
| 419 ((anon) ? "anon" : "norm")); | |
| 420 sflap_send(send, -1, TYPE_DATA); | |
| 421 g_free(send); | |
| 422 #endif | |
| 423 } | |
| 424 | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
425 void serv_build_config(char *buf, int len) { |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
426 toc_build_config(buf, len); |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
427 } |
|
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
428 |
| 1 | 429 |
| 430 void serv_save_config() | |
| 431 { | |
| 432 #ifndef USE_OSCAR | |
| 433 char *buf = g_malloc(BUF_LONG); | |
| 434 char *buf2 = g_malloc(MSG_LEN); | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
435 serv_build_config(buf, BUF_LONG / 2); |
| 1 | 436 g_snprintf(buf2, MSG_LEN, "toc_set_config {%s}", buf); |
| 437 sflap_send(buf2, -1, TYPE_DATA); | |
| 438 g_free(buf2); | |
| 439 g_free(buf); | |
| 440 #endif | |
| 441 } | |
| 442 | |
| 443 | |
| 444 void serv_accept_chat(int i) | |
| 445 { | |
| 446 #ifndef USE_OSCAR | |
| 447 char *buf = g_malloc(256); | |
| 448 g_snprintf(buf, 255, "toc_chat_accept %d", i); | |
| 449 sflap_send(buf, -1, TYPE_DATA); | |
| 450 g_free(buf); | |
|
252
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
451 #else |
|
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
452 /* this should never get called because libfaim doesn't use the id |
|
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
453 * (i'm not even sure Oscar does). go through serv_join_chat instead */ |
| 1 | 454 #endif |
| 455 } | |
| 456 | |
| 457 void serv_join_chat(int exchange, char *name) | |
| 458 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
459 char buf[BUF_LONG]; |
| 1 | 460 #ifndef USE_OSCAR |
| 461 g_snprintf(buf, sizeof(buf)/2, "toc_chat_join %d \"%s\"", exchange, name); | |
| 462 sflap_send(buf, -1, TYPE_DATA); | |
|
248
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
463 #else |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
464 aim_chat_join(gaim_sess, gaim_conn, 0x0004, name); |
| 1 | 465 #endif |
| 466 } | |
| 467 | |
| 468 void serv_chat_invite(int id, char *message, char *name) | |
| 469 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
470 char buf[BUF_LONG]; |
| 1 | 471 #ifndef USE_OSCAR |
| 472 g_snprintf(buf, sizeof(buf)/2, "toc_chat_invite %d \"%s\" %s", id, message, normalize(name)); | |
| 473 sflap_send(buf, -1, TYPE_DATA); | |
|
258
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
474 #else |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
475 GList *bcs = buddy_chats; |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
476 struct buddy_chat *b = NULL; |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
477 |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
478 while (bcs) { |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
479 b = (struct buddy_chat *)bcs->data; |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
480 if (id == b->id) |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
481 break; |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
482 bcs = bcs->next; |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
483 b = NULL; |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
484 } |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
485 |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
486 if (!b) |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
487 return; |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
488 |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
489 aim_chat_invite(gaim_sess, gaim_conn, name, message, 0x4, b->name, 0x1); |
| 1 | 490 #endif |
| 491 } | |
| 492 | |
| 493 void serv_chat_leave(int id) | |
| 494 { | |
| 495 #ifndef USE_OSCAR | |
| 496 char *buf = g_malloc(256); | |
| 497 g_snprintf(buf, 255, "toc_chat_leave %d", id); | |
| 498 sflap_send(buf, -1, TYPE_DATA); | |
| 499 g_free(buf); | |
|
248
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
500 #else |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
501 GList *bcs = buddy_chats; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
502 struct buddy_chat *b = NULL; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
503 |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
504 while (bcs) { |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
505 b = (struct buddy_chat *)bcs->data; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
506 if (id == b->id) |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
507 break; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
508 bcs = bcs->next; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
509 b = NULL; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
510 } |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
511 |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
512 if (!b) |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
513 return; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
514 |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
515 aim_chat_leaveroom(gaim_sess, b->name); |
| 1 | 516 #endif |
| 517 } | |
| 518 | |
| 519 void serv_chat_whisper(int id, char *who, char *message) | |
| 520 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
521 char buf2[MSG_LEN]; |
| 1 | 522 #ifndef USE_OSCAR |
| 523 g_snprintf(buf2, sizeof(buf2), "toc_chat_whisper %d %s \"%s\"", id, who, message); | |
| 524 sflap_send(buf2, -1, TYPE_DATA); | |
|
248
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
525 #else |
|
258
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
526 do_error_dialog("Sorry, Oscar doesn't whisper. Send an IM.", |
|
1eeece1c7b7b
[gaim-migrate @ 268]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
256
diff
changeset
|
527 "Gaim - Chat"); |
| 1 | 528 #endif |
| 529 } | |
| 530 | |
| 531 void serv_chat_send(int id, char *message) | |
| 532 { | |
|
237
6ced2f1c8b24
[gaim-migrate @ 247]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
533 char buf[MSG_LEN]; |
| 1 | 534 #ifndef USE_OSCAR |
| 535 g_snprintf(buf, sizeof(buf), "toc_chat_send %d \"%s\"",id, message); | |
| 536 sflap_send(buf, -1, TYPE_DATA); | |
|
248
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
537 #else |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
538 struct aim_conn_t *cn; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
539 GList *bcs = buddy_chats; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
540 struct buddy_chat *b = NULL; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
541 |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
542 while (bcs) { |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
543 b = (struct buddy_chat *)bcs->data; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
544 if (id == b->id) |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
545 break; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
546 bcs = bcs->next; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
547 b = NULL; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
548 } |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
549 if (!b) |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
550 return; |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
551 |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
552 cn = aim_chat_getconn(gaim_sess, b->name); |
|
cfc73b8501a7
[gaim-migrate @ 258]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
247
diff
changeset
|
553 aim_chat_send_im(gaim_sess, cn, message); |
| 1 | 554 #endif |
| 555 } | |
| 556 | |
| 557 | |
| 558 | |
| 559 | |
| 560 void serv_got_im(char *name, char *message, int away) | |
| 561 { | |
| 562 struct conversation *cnv; | |
| 563 int is_idle = -1; | |
| 564 int new_conv = 0; | |
| 565 char *nname; | |
| 566 | |
|
94
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
567 #ifdef GAIM_PLUGINS |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
568 GList *c = callbacks; |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
569 struct gaim_callback *g; |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
570 void (*function)(char **, char **, void *); |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
571 while (c) { |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
572 g = (struct gaim_callback *)c->data; |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
573 if (g->event == event_im_recv && g->function != NULL) { |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
574 function = g->function; |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
575 /* I can guarantee you this is wrong */ |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
576 (*function)(&name, &message, g->data); |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
577 } |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
578 c = c->next; |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
579 } |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
580 /* make sure no evil plugin is trying to crash gaim */ |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
581 if (message == NULL) |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
582 return; |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
583 #endif |
|
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
79
diff
changeset
|
584 |
| 1 | 585 nname = g_strdup(normalize(name)); |
| 586 | |
|
171
789c792ed14b
[gaim-migrate @ 181]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
145
diff
changeset
|
587 if (!strcasecmp(normalize(current_user->username), nname)) { |
| 1 | 588 if (!strcmp(message, LAGOMETER_STR)) { |
| 589 struct timeval tv; | |
| 590 int ms; | |
| 591 | |
| 592 gettimeofday(&tv, NULL); | |
| 593 | |
| 594 ms = 1000000 * (tv.tv_sec - lag_tv.tv_sec); | |
| 595 | |
| 596 ms += tv.tv_usec - lag_tv.tv_usec; | |
| 597 | |
| 598 update_lagometer(ms); | |
| 599 g_free(nname); | |
| 600 return; | |
| 601 } | |
| 14 | 602 } |
| 1 | 603 g_free(nname); |
| 604 | |
| 605 cnv = find_conversation(name); | |
|
145
41bd1cd48571
[gaim-migrate @ 155]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
136
diff
changeset
|
606 if (away) away = WFLAG_AUTO; |
| 1 | 607 |
| 608 if (awaymessage != NULL) { | |
| 609 if (!(general_options & OPT_GEN_DISCARD_WHEN_AWAY)) { | |
| 610 if (cnv == NULL) { | |
| 611 new_conv = 1; | |
| 612 cnv = new_conversation(name); | |
| 613 } | |
| 614 } | |
| 615 if (cnv != NULL) { | |
| 616 if (sound_options & OPT_SOUND_WHEN_AWAY) | |
| 617 play_sound(AWAY); | |
|
145
41bd1cd48571
[gaim-migrate @ 155]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
136
diff
changeset
|
618 write_to_conv(cnv, message, away | WFLAG_RECV); |
| 1 | 619 } |
| 620 | |
| 621 } else { | |
| 622 if (cnv == NULL) { | |
| 623 new_conv = 1; | |
| 624 cnv = new_conversation(name); | |
| 625 } | |
| 626 if (new_conv && (sound_options & OPT_SOUND_FIRST_RCV)) { | |
| 627 play_sound(FIRST_RECEIVE); | |
| 628 } else { | |
| 629 if (cnv->makesound && (sound_options & OPT_SOUND_RECV)) | |
| 630 play_sound(RECEIVE); | |
| 631 } | |
|
145
41bd1cd48571
[gaim-migrate @ 155]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
136
diff
changeset
|
632 write_to_conv(cnv, message, away | WFLAG_RECV); |
| 1 | 633 } |
| 634 | |
| 635 | |
| 636 | |
| 637 | |
| 638 if (awaymessage != NULL) { | |
| 639 time_t t; | |
|
263
8aa7368baae7
[gaim-migrate @ 273]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
260
diff
changeset
|
640 char tmpmsg[BUF_LEN]; |
| 1 | 641 |
| 642 time(&t); | |
| 643 | |
| 644 | |
| 645 if ((cnv == NULL) || (t - cnv->sent_away) < 120) | |
| 646 return; | |
| 647 | |
| 648 cnv->sent_away = t; | |
| 649 | |
| 650 if (is_idle) | |
| 651 is_idle = -1; | |
| 652 | |
|
263
8aa7368baae7
[gaim-migrate @ 273]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
260
diff
changeset
|
653 strcpy(tmpmsg, awaymessage->message); |
|
8aa7368baae7
[gaim-migrate @ 273]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
260
diff
changeset
|
654 escape_text(tmpmsg); |
|
8aa7368baae7
[gaim-migrate @ 273]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
260
diff
changeset
|
655 escape_message(tmpmsg); |
|
8aa7368baae7
[gaim-migrate @ 273]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
260
diff
changeset
|
656 serv_send_im(name, tmpmsg, 1); |
| 1 | 657 |
| 658 if (is_idle == -1) | |
| 659 is_idle = 1; | |
| 660 | |
| 661 if (cnv != NULL) | |
| 662 write_to_conv(cnv, awaymessage->message, WFLAG_SEND | WFLAG_AUTO); | |
| 663 } | |
| 664 } | |
| 665 | |
| 666 | |
| 667 | |
| 668 void serv_got_update(char *name, int loggedin, int evil, time_t signon, time_t idle, int type) | |
| 669 { | |
| 670 struct buddy *b; | |
| 671 char *nname; | |
| 672 | |
| 673 b = find_buddy(name); | |
| 674 | |
| 675 nname = g_strdup(normalize(name)); | |
| 676 if (!strcasecmp(nname, normalize(current_user->username))) { | |
| 677 correction_time = (int)(signon - login_time); | |
| 678 update_all_buddies(); | |
| 25 | 679 if (!b) { |
| 680 g_free(nname); | |
| 1 | 681 return; |
| 25 | 682 } |
| 1 | 683 } |
| 684 | |
| 25 | 685 g_free(nname); |
| 1 | 686 |
| 687 if (!b) { | |
| 688 sprintf(debug_buff,"Error, no such person\n"); | |
| 689 debug_print(debug_buff); | |
| 690 return; | |
| 691 } | |
| 692 | |
| 693 /* This code will 'align' the name from the TOC */ | |
| 694 /* server with what's in our record. We want to */ | |
| 695 /* store things how THEY want it... */ | |
| 696 if (strcmp(name, b->name)) { | |
| 697 GList *cnv = conversations; | |
| 698 struct conversation *cv; | |
| 699 | |
| 700 char *who = g_malloc(80); | |
| 701 | |
| 702 strcpy(who, normalize(name)); | |
| 703 | |
| 704 while(cnv) { | |
| 705 cv = (struct conversation *)cnv->data; | |
| 706 if (!strcasecmp(who, normalize(cv->name))) { | |
| 707 g_snprintf(cv->name, sizeof(cv->name), "%s", name); | |
| 708 if (find_log_info(name) || (general_options & OPT_GEN_LOG_ALL)) | |
| 709 g_snprintf(who, 63, LOG_CONVERSATION_TITLE, name); | |
| 710 else | |
| 711 g_snprintf(who, 63, CONVERSATION_TITLE, name); | |
| 712 gtk_window_set_title(GTK_WINDOW(cv->window), who); | |
| 79 | 713 /* was g_free(buf), but break gives us that |
| 714 * and freeing twice is not good --Sumner */ | |
| 1 | 715 break; |
| 716 } | |
| 717 cnv = cnv->next; | |
| 718 } | |
| 45 | 719 g_free(who); |
| 1 | 720 g_snprintf(b->name, sizeof(b->name), "%s", name); |
| 721 /*gtk_label_set_text(GTK_LABEL(b->label), b->name);*/ | |
| 722 | |
| 723 /* okay lets save the new config... */ | |
| 724 | |
| 725 } | |
| 726 | |
| 727 b->idle = idle; | |
| 728 b->evil = evil; | |
|
136
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
729 #ifdef GAIM_PLUGINS |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
730 if ((b->uc & UC_UNAVAILABLE) && !(type & UC_UNAVAILABLE)) { |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
731 GList *c = callbacks; |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
732 struct gaim_callback *g; |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
733 void (*function)(char *, void *); |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
734 while (c) { |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
735 g = (struct gaim_callback *)c->data; |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
736 if (g->event == event_buddy_back && |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
737 g->function != NULL) { |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
738 function = g->function; |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
739 (*function)(b->name, g->data); |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
740 } |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
741 c = c->next; |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
742 } |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
743 } |
|
4e91b92f91a7
[gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
115
diff
changeset
|
744 #endif |
| 1 | 745 b->uc = type; |
| 746 | |
| 747 b->signon = signon; | |
| 748 | |
| 749 if (loggedin) { | |
| 750 if (!b->present) { | |
| 751 b->present = 1; | |
| 752 do_pounce(b->name); | |
| 753 } | |
| 754 } else | |
| 755 b->present = 0; | |
| 756 | |
| 757 set_buddy(b); | |
| 758 } | |
| 759 | |
| 760 static | |
| 761 void close_warned(GtkWidget *w, GtkWidget *w2) | |
| 762 { | |
| 763 gtk_widget_destroy(w2); | |
| 764 } | |
| 765 | |
| 766 | |
| 767 | |
| 768 void serv_got_eviled(char *name, int lev) | |
| 769 { | |
| 770 char *buf2 = g_malloc(1024); | |
| 771 GtkWidget *d, *label, *close; | |
| 772 | |
| 773 | |
| 774 g_snprintf(buf2, 1023, "You have just been warned by %s.\nYour new warning level is %d./%%", | |
| 775 ((name == NULL) ? "an anonymous person" : name) , lev); | |
| 776 | |
| 777 | |
| 778 d = gtk_dialog_new(); | |
| 779 gtk_widget_realize(d); | |
| 780 aol_icon(d->window); | |
| 781 | |
| 782 label = gtk_label_new(buf2); | |
| 783 gtk_widget_show(label); | |
| 784 close = gtk_button_new_with_label("Close"); | |
| 785 gtk_widget_show(close); | |
| 786 gtk_box_pack_start(GTK_BOX(GTK_DIALOG(d)->vbox), | |
| 787 label, FALSE, FALSE, 5); | |
| 788 gtk_box_pack_start(GTK_BOX(GTK_DIALOG(d)->action_area), | |
| 789 close, FALSE, FALSE, 5); | |
| 790 | |
| 791 gtk_window_set_title(GTK_WINDOW(d), "Warned"); | |
| 792 gtk_signal_connect(GTK_OBJECT(close), "clicked", GTK_SIGNAL_FUNC(close_warned), d); | |
| 793 gtk_widget_show(d); | |
| 794 } | |
| 795 | |
| 796 | |
| 797 | |
| 798 static void close_invite(GtkWidget *w, GtkWidget *w2) | |
| 799 { | |
| 800 gtk_widget_destroy(w2); | |
| 801 } | |
| 802 | |
| 803 static void chat_invite_callback(GtkWidget *w, GtkWidget *w2) | |
| 804 { | |
|
252
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
805 #ifndef USE_OSCAR |
| 1 | 806 int i = (int)gtk_object_get_user_data(GTK_OBJECT(w2)); |
| 807 serv_accept_chat(i); | |
| 808 gtk_widget_destroy(w2); | |
|
252
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
809 #else |
|
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
810 char *i = (char *)gtk_object_get_user_data(GTK_OBJECT(w2)); |
|
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
811 serv_join_chat(0, i); /* for oscar, it doesn't use the id anyway */ |
|
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
812 gtk_widget_destroy(w2); |
|
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
813 #endif |
| 1 | 814 } |
| 815 | |
| 816 | |
| 817 | |
| 818 void serv_got_chat_invite(char *name, int id, char *who, char *message) | |
| 819 { | |
| 820 GtkWidget *d; | |
| 821 GtkWidget *label; | |
| 822 GtkWidget *yesbtn; | |
| 823 GtkWidget *nobtn; | |
| 824 | |
| 825 char buf2[BUF_LONG]; | |
| 826 | |
| 827 | |
| 828 g_snprintf(buf2, sizeof(buf2), "User '%s' invites you to buddy chat room: '%s'\n%s", who, name, message); | |
| 829 | |
| 830 d = gtk_dialog_new(); | |
| 831 gtk_widget_realize(d); | |
| 832 aol_icon(d->window); | |
| 833 | |
| 834 | |
| 835 label = gtk_label_new(buf2); | |
| 836 gtk_widget_show(label); | |
| 837 yesbtn = gtk_button_new_with_label("Yes"); | |
| 838 gtk_widget_show(yesbtn); | |
| 839 nobtn = gtk_button_new_with_label("No"); | |
| 840 gtk_widget_show(nobtn); | |
| 841 gtk_box_pack_start(GTK_BOX(GTK_DIALOG(d)->vbox), | |
| 842 label, FALSE, FALSE, 5); | |
| 843 gtk_box_pack_start(GTK_BOX(GTK_DIALOG(d)->action_area), | |
| 844 yesbtn, FALSE, FALSE, 5); | |
| 845 gtk_box_pack_start(GTK_BOX(GTK_DIALOG(d)->action_area), | |
| 846 nobtn, FALSE, FALSE, 5); | |
| 847 | |
| 848 | |
| 849 /* gtk_widget_set_usize(d, 200, 110); */ | |
|
252
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
850 #ifndef USE_OSCAR |
| 1 | 851 gtk_object_set_user_data(GTK_OBJECT(d), (void *)id); |
|
252
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
852 #else |
|
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
853 gtk_object_set_user_data(GTK_OBJECT(d), (void *)name); |
|
4a41f8323022
[gaim-migrate @ 262]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
249
diff
changeset
|
854 #endif |
| 1 | 855 |
| 856 | |
| 857 gtk_window_set_title(GTK_WINDOW(d), "Buddy chat invite"); | |
| 858 gtk_signal_connect(GTK_OBJECT(nobtn), "clicked", GTK_SIGNAL_FUNC(close_invite), d); | |
| 859 gtk_signal_connect(GTK_OBJECT(yesbtn), "clicked", GTK_SIGNAL_FUNC(chat_invite_callback), d); | |
| 860 | |
| 861 | |
| 862 gtk_widget_show(d); | |
| 863 } | |
| 864 | |
| 865 void serv_got_joined_chat(int id, char *name) | |
| 866 { | |
| 867 struct buddy_chat *b; | |
| 868 | |
| 869 b = (struct buddy_chat *)g_new0(struct buddy_chat, 1); | |
| 870 buddy_chats = g_list_append(buddy_chats, b); | |
| 871 | |
| 872 b->ignored = NULL; | |
| 873 b->in_room = NULL; | |
| 874 b->id = id; | |
| 875 g_snprintf(b->name, 80, "%s", name); | |
| 876 show_new_buddy_chat(b); | |
| 877 } | |
| 878 | |
| 879 void serv_got_chat_left(int id) | |
| 880 { | |
| 881 GList *bcs = buddy_chats; | |
| 882 struct buddy_chat *b = NULL; | |
| 883 | |
| 884 | |
| 885 while(bcs) { | |
| 886 b = (struct buddy_chat *)bcs->data; | |
| 887 if (id == b->id) { | |
| 888 break; | |
| 889 } | |
| 890 b = NULL; | |
| 891 bcs = bcs->next; | |
| 892 } | |
| 893 | |
| 894 if (!b) | |
| 895 return; | |
| 896 | |
| 897 if (b->window) | |
| 898 gtk_widget_destroy(GTK_WIDGET(b->window)); | |
| 899 | |
| 900 buddy_chats = g_list_remove(buddy_chats, b); | |
| 901 | |
| 902 g_free(b); | |
| 903 } | |
| 904 | |
| 905 void serv_got_chat_in(int id, char *who, int whisper, char *message) | |
| 906 { | |
| 907 int w; | |
| 908 GList *bcs = buddy_chats; | |
| 909 struct buddy_chat *b = NULL; | |
| 910 | |
| 911 while(bcs) { | |
| 912 b = (struct buddy_chat *)bcs->data; | |
| 913 if (id == b->id) | |
| 914 break; | |
| 915 bcs = bcs->next; | |
| 916 b = NULL; | |
| 917 | |
| 918 } | |
| 919 if (!b) | |
| 920 return; | |
| 921 | |
| 922 if (whisper) | |
| 923 w = WFLAG_WHISPER; | |
| 924 else | |
| 925 w = 0; | |
| 926 | |
| 927 chat_write(b, who, w, message); | |
| 928 } | |
| 929 | |
|
260
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
930 void serv_rvous_accept(char *name, char *cookie, char *uid) |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
931 { |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
932 char buf[MSG_LEN]; |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
933 #ifndef USE_OSCAR |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
934 g_snprintf(buf, MSG_LEN, "toc_rvous_accept %s %s %s", normalize(name), |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
935 cookie, uid); |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
936 sflap_send(buf, strlen(buf), TYPE_DATA); |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
937 #endif |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
938 } |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
939 |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
940 void serv_rvous_cancel(char *name, char *cookie, char *uid) |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
941 { |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
942 char buf[MSG_LEN]; |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
943 #ifndef USE_OSCAR |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
944 g_snprintf(buf, MSG_LEN, "toc_rvous_cancel %s %s %s", normalize(name), |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
945 cookie, uid); |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
946 sflap_send(buf, strlen(buf), TYPE_DATA); |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
947 #endif |
|
325d9804df10
[gaim-migrate @ 270]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
258
diff
changeset
|
948 } |
