Mercurial > pidgin
comparison src/protocols/silc/ops.c @ 10246:a66cf83552dc
[gaim-migrate @ 11386]
I changed gaim_find_conversation and gaim_find_conversation_with_account
The first parameter is now one of GAIM_CONV_IM, GAIM_CONV_CHAT or
GAIM_CONV_ANY. Unfortunately, this changes a bajillion files.
Please look over this and make sure I use the correct type everywhere.
Especially in Novell and MSN, and somewhat in SILC.
committer: Tailor Script <tailor@pidgin.im>
| author | Mark Doliner <mark@kingant.net> |
|---|---|
| date | Tue, 23 Nov 2004 06:14:15 +0000 |
| parents | 4e376556566e |
| children | 114d3ac8ff5a |
comparison
equal
deleted
inserted
replaced
| 10245:c143a3fac58d | 10246:a66cf83552dc |
|---|---|
| 61 SilcGaimPrvgrp prv; | 61 SilcGaimPrvgrp prv; |
| 62 | 62 |
| 63 for (l = sg->grps; l; l = l->next) | 63 for (l = sg->grps; l; l = l->next) |
| 64 if (((SilcGaimPrvgrp)l->data)->key == key) { | 64 if (((SilcGaimPrvgrp)l->data)->key == key) { |
| 65 prv = l->data; | 65 prv = l->data; |
| 66 convo = gaim_find_conversation_with_account(prv->channel, | 66 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 67 sg->account); | 67 prv->channel, sg->account); |
| 68 break; | 68 break; |
| 69 } | 69 } |
| 70 } | 70 } |
| 71 if (!convo) | 71 if (!convo) |
| 72 convo = gaim_find_conversation_with_account(channel->channel_name, | 72 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 73 sg->account); | 73 channel->channel_name, sg->account); |
| 74 if (!convo) | 74 if (!convo) |
| 75 return; | 75 return; |
| 76 | 76 |
| 77 if (flags & SILC_MESSAGE_FLAG_SIGNED && | 77 if (flags & SILC_MESSAGE_FLAG_SIGNED && |
| 78 gaim_prefs_get_bool("/plugins/prpl/silc/verify_chat")) { | 78 gaim_prefs_get_bool("/plugins/prpl/silc/verify_chat")) { |
| 147 | 147 |
| 148 if (!message) | 148 if (!message) |
| 149 return; | 149 return; |
| 150 | 150 |
| 151 if (sender->nickname) | 151 if (sender->nickname) |
| 152 convo = gaim_find_conversation_with_account(sender->nickname, sg->account); | 152 /* XXX - Should this be GAIM_CONV_IM? */ |
| 153 convo = gaim_find_conversation_with_account(GAIM_CONV_ANY, | |
| 154 sender->nickname, sg->account); | |
| 153 | 155 |
| 154 if (flags & SILC_MESSAGE_FLAG_SIGNED && | 156 if (flags & SILC_MESSAGE_FLAG_SIGNED && |
| 155 gaim_prefs_get_bool("/plugins/prpl/silc/verify_im")) { | 157 gaim_prefs_get_bool("/plugins/prpl/silc/verify_im")) { |
| 156 /* XXX */ | 158 /* XXX */ |
| 157 } | 159 } |
| 261 | 263 |
| 262 /* If we joined channel, do nothing */ | 264 /* If we joined channel, do nothing */ |
| 263 if (client_entry == conn->local_entry) | 265 if (client_entry == conn->local_entry) |
| 264 break; | 266 break; |
| 265 | 267 |
| 266 convo = gaim_find_conversation_with_account(channel->channel_name, | 268 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 267 sg->account); | 269 channel->channel_name, sg->account); |
| 268 if (!convo) | 270 if (!convo) |
| 269 break; | 271 break; |
| 270 | 272 |
| 271 /* Join user to channel */ | 273 /* Join user to channel */ |
| 272 g_snprintf(buf, sizeof(buf), "%s@%s", | 274 g_snprintf(buf, sizeof(buf), "%s@%s", |
| 278 | 280 |
| 279 case SILC_NOTIFY_TYPE_LEAVE: | 281 case SILC_NOTIFY_TYPE_LEAVE: |
| 280 client_entry = va_arg(va, SilcClientEntry); | 282 client_entry = va_arg(va, SilcClientEntry); |
| 281 channel = va_arg(va, SilcChannelEntry); | 283 channel = va_arg(va, SilcChannelEntry); |
| 282 | 284 |
| 283 convo = gaim_find_conversation_with_account(channel->channel_name, | 285 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 284 sg->account); | 286 channel->channel_name, sg->account); |
| 285 if (!convo) | 287 if (!convo) |
| 286 break; | 288 break; |
| 287 | 289 |
| 288 /* Remove user from channel */ | 290 /* Remove user from channel */ |
| 289 gaim_conv_chat_remove_user(GAIM_CONV_CHAT(convo), | 291 gaim_conv_chat_remove_user(GAIM_CONV_CHAT(convo), |
| 299 break; | 301 break; |
| 300 | 302 |
| 301 /* Remove from all channels */ | 303 /* Remove from all channels */ |
| 302 silc_hash_table_list(client_entry->channels, &htl); | 304 silc_hash_table_list(client_entry->channels, &htl); |
| 303 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { | 305 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { |
| 304 convo = gaim_find_conversation_with_account(chu->channel->channel_name, | 306 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 305 sg->account); | 307 chu->channel->channel_name, sg->account); |
| 306 if (!convo) | 308 if (!convo) |
| 307 continue; | 309 continue; |
| 308 gaim_conv_chat_remove_user(GAIM_CONV_CHAT(convo), | 310 gaim_conv_chat_remove_user(GAIM_CONV_CHAT(convo), |
| 309 client_entry->nickname, | 311 client_entry->nickname, |
| 310 tmp); | 312 tmp); |
| 319 idtype = va_arg(va, int); | 321 idtype = va_arg(va, int); |
| 320 entry = va_arg(va, void *); | 322 entry = va_arg(va, void *); |
| 321 tmp = va_arg(va, char *); | 323 tmp = va_arg(va, char *); |
| 322 channel = va_arg(va, SilcChannelEntry); | 324 channel = va_arg(va, SilcChannelEntry); |
| 323 | 325 |
| 324 convo = gaim_find_conversation_with_account(channel->channel_name, | 326 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 325 sg->account); | 327 channel->channel_name, sg->account); |
| 326 if (!convo) | 328 if (!convo) |
| 327 break; | 329 break; |
| 328 | 330 |
| 329 if (!tmp) | 331 if (!tmp) |
| 330 break; | 332 break; |
| 377 break; | 379 break; |
| 378 | 380 |
| 379 /* Change nick on all channels */ | 381 /* Change nick on all channels */ |
| 380 silc_hash_table_list(client_entry2->channels, &htl); | 382 silc_hash_table_list(client_entry2->channels, &htl); |
| 381 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { | 383 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { |
| 382 convo = gaim_find_conversation_with_account(chu->channel->channel_name, | 384 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 383 sg->account); | 385 chu->channel->channel_name, sg->account); |
| 384 if (!convo) | 386 if (!convo) |
| 385 continue; | 387 continue; |
| 386 if (gaim_conv_chat_find_user(GAIM_CONV_CHAT(convo), client_entry->nickname)) | 388 if (gaim_conv_chat_find_user(GAIM_CONV_CHAT(convo), client_entry->nickname)) |
| 387 gaim_conv_chat_rename_user(GAIM_CONV_CHAT(convo), | 389 gaim_conv_chat_rename_user(GAIM_CONV_CHAT(convo), |
| 388 client_entry->nickname, | 390 client_entry->nickname, |
| 401 (void)va_arg(va, char *); | 403 (void)va_arg(va, char *); |
| 402 (void)va_arg(va, SilcPublicKey); | 404 (void)va_arg(va, SilcPublicKey); |
| 403 buffer = va_arg(va, SilcBuffer); | 405 buffer = va_arg(va, SilcBuffer); |
| 404 channel = va_arg(va, SilcChannelEntry); | 406 channel = va_arg(va, SilcChannelEntry); |
| 405 | 407 |
| 406 convo = gaim_find_conversation_with_account(channel->channel_name, | 408 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 407 sg->account); | 409 channel->channel_name, sg->account); |
| 408 if (!convo) | 410 if (!convo) |
| 409 break; | 411 break; |
| 410 | 412 |
| 411 if (idtype == SILC_ID_CLIENT) | 413 if (idtype == SILC_ID_CLIENT) |
| 412 name = ((SilcClientEntry)entry)->nickname; | 414 name = ((SilcClientEntry)entry)->nickname; |
| 438 entry = va_arg(va, void *); | 440 entry = va_arg(va, void *); |
| 439 mode = va_arg(va, SilcUInt32); | 441 mode = va_arg(va, SilcUInt32); |
| 440 client_entry2 = va_arg(va, SilcClientEntry); | 442 client_entry2 = va_arg(va, SilcClientEntry); |
| 441 channel = va_arg(va, SilcChannelEntry); | 443 channel = va_arg(va, SilcChannelEntry); |
| 442 | 444 |
| 443 convo = gaim_find_conversation_with_account(channel->channel_name, | 445 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 444 sg->account); | 446 channel->channel_name, sg->account); |
| 445 if (!convo) | 447 if (!convo) |
| 446 break; | 448 break; |
| 447 | 449 |
| 448 if (idtype == SILC_ID_CLIENT) | 450 if (idtype == SILC_ID_CLIENT) |
| 449 name = ((SilcClientEntry)entry)->nickname; | 451 name = ((SilcClientEntry)entry)->nickname; |
| 484 client_entry = va_arg(va, SilcClientEntry); | 486 client_entry = va_arg(va, SilcClientEntry); |
| 485 tmp = va_arg(va, char *); | 487 tmp = va_arg(va, char *); |
| 486 client_entry2 = va_arg(va, SilcClientEntry); | 488 client_entry2 = va_arg(va, SilcClientEntry); |
| 487 channel = va_arg(va, SilcChannelEntry); | 489 channel = va_arg(va, SilcChannelEntry); |
| 488 | 490 |
| 489 convo = gaim_find_conversation_with_account(channel->channel_name, | 491 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 490 sg->account); | 492 channel->channel_name, sg->account); |
| 491 if (!convo) | 493 if (!convo) |
| 492 break; | 494 break; |
| 493 | 495 |
| 494 if (client_entry == conn->local_entry) { | 496 if (client_entry == conn->local_entry) { |
| 495 /* Remove us from channel */ | 497 /* Remove us from channel */ |
| 539 } | 541 } |
| 540 | 542 |
| 541 /* Remove us from all channels */ | 543 /* Remove us from all channels */ |
| 542 silc_hash_table_list(client_entry->channels, &htl); | 544 silc_hash_table_list(client_entry->channels, &htl); |
| 543 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { | 545 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { |
| 544 convo = gaim_find_conversation_with_account(chu->channel->channel_name, | 546 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 545 sg->account); | 547 chu->channel->channel_name, sg->account); |
| 546 if (!convo) | 548 if (!convo) |
| 547 continue; | 549 continue; |
| 548 gaim_conv_chat_write(GAIM_CONV_CHAT(convo), client_entry->nickname, | 550 gaim_conv_chat_write(GAIM_CONV_CHAT(convo), client_entry->nickname, |
| 549 buf, GAIM_MESSAGE_SYSTEM, time(NULL)); | 551 buf, GAIM_MESSAGE_SYSTEM, time(NULL)); |
| 550 serv_got_chat_left(gc, gaim_conv_chat_get_id(GAIM_CONV_CHAT(convo))); | 552 serv_got_chat_left(gc, gaim_conv_chat_get_id(GAIM_CONV_CHAT(convo))); |
| 570 } | 572 } |
| 571 | 573 |
| 572 /* Remove user from all channels */ | 574 /* Remove user from all channels */ |
| 573 silc_hash_table_list(client_entry->channels, &htl); | 575 silc_hash_table_list(client_entry->channels, &htl); |
| 574 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { | 576 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { |
| 575 convo = gaim_find_conversation_with_account(chu->channel->channel_name, | 577 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 576 sg->account); | 578 chu->channel->channel_name, sg->account); |
| 577 if (!convo) | 579 if (!convo) |
| 578 continue; | 580 continue; |
| 579 gaim_conv_chat_remove_user(GAIM_CONV_CHAT(convo), | 581 gaim_conv_chat_remove_user(GAIM_CONV_CHAT(convo), |
| 580 client_entry->nickname, tmp); | 582 client_entry->nickname, tmp); |
| 581 } | 583 } |
| 603 | 605 |
| 604 /* Remove from all channels */ | 606 /* Remove from all channels */ |
| 605 silc_hash_table_list(clients[i]->channels, &htl); | 607 silc_hash_table_list(clients[i]->channels, &htl); |
| 606 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { | 608 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { |
| 607 convo = | 609 convo = |
| 608 gaim_find_conversation_with_account(chu->channel->channel_name, | 610 gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 609 sg->account); | 611 chu->channel->channel_name, sg->account); |
| 610 if (!convo) | 612 if (!convo) |
| 611 continue; | 613 continue; |
| 612 gaim_conv_chat_remove_user(GAIM_CONV_CHAT(convo), | 614 gaim_conv_chat_remove_user(GAIM_CONV_CHAT(convo), |
| 613 clients[i]->nickname, | 615 clients[i]->nickname, |
| 614 _("Server signoff")); | 616 _("Server signoff")); |
| 1170 return; | 1172 return; |
| 1171 } | 1173 } |
| 1172 | 1174 |
| 1173 channel = va_arg(vp, SilcChannelEntry); | 1175 channel = va_arg(vp, SilcChannelEntry); |
| 1174 | 1176 |
| 1175 convo = gaim_find_conversation_with_account(channel->channel_name, | 1177 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 1176 sg->account); | 1178 channel->channel_name, sg->account); |
| 1177 if (!convo) { | 1179 if (!convo) { |
| 1178 gaim_debug_error("silc", "Got a topic for %s, which doesn't exist\n", | 1180 gaim_debug_error("silc", "Got a topic for %s, which doesn't exist\n", |
| 1179 channel->channel_name); | |
| 1180 break; | |
| 1181 } | |
| 1182 | |
| 1183 if (gaim_conversation_get_type(convo) != GAIM_CONV_CHAT) { | |
| 1184 gaim_debug_error("silc", "Got a topic for %s, which isn't a chat\n", | |
| 1185 channel->channel_name); | 1181 channel->channel_name); |
| 1186 break; | 1182 break; |
| 1187 } | 1183 } |
| 1188 | 1184 |
| 1189 /* Set topic */ | 1185 /* Set topic */ |
| 1211 local_entry = va_arg(vp, SilcClientEntry); | 1207 local_entry = va_arg(vp, SilcClientEntry); |
| 1212 | 1208 |
| 1213 /* Change nick on all channels */ | 1209 /* Change nick on all channels */ |
| 1214 silc_hash_table_list(local_entry->channels, &htl); | 1210 silc_hash_table_list(local_entry->channels, &htl); |
| 1215 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { | 1211 while (silc_hash_table_get(&htl, NULL, (void *)&chu)) { |
| 1216 convo = gaim_find_conversation_with_account(chu->channel->channel_name, | 1212 convo = gaim_find_conversation_with_account(GAIM_CONV_CHAT, |
| 1217 sg->account); | 1213 chu->channel->channel_name, sg->account); |
| 1218 if (!convo || (gaim_conversation_get_type(convo) != GAIM_CONV_CHAT)) | 1214 if (!convo) |
| 1219 continue; | 1215 continue; |
| 1220 oldnick = gaim_conv_chat_get_nick(GAIM_CONV_CHAT(convo)); | 1216 oldnick = gaim_conv_chat_get_nick(GAIM_CONV_CHAT(convo)); |
| 1221 if (strcmp(oldnick, local_entry->nickname)) { | 1217 if (strcmp(oldnick, local_entry->nickname)) { |
| 1222 gaim_conv_chat_rename_user(GAIM_CONV_CHAT(convo), | 1218 gaim_conv_chat_rename_user(GAIM_CONV_CHAT(convo), |
| 1223 oldnick, local_entry->nickname); | 1219 oldnick, local_entry->nickname); |
