Mercurial > pidgin.yaz
comparison src/toc.c @ 1615:5a2fd3f2a1d0
[gaim-migrate @ 1625]
maybe this will fix something.
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Mon, 19 Mar 2001 10:33:33 +0000 |
parents | b6fe5cab70d6 |
children | 8684c0315818 |
comparison
equal
deleted
inserted
replaced
1614:3d3362903e1d | 1615:5a2fd3f2a1d0 |
---|---|
281 struct gaim_connection *gc = (struct gaim_connection *)data; | 281 struct gaim_connection *gc = (struct gaim_connection *)data; |
282 struct toc_data *tdt = (struct toc_data *)gc->proto_data; | 282 struct toc_data *tdt = (struct toc_data *)gc->proto_data; |
283 struct sflap_hdr *hdr; | 283 struct sflap_hdr *hdr; |
284 struct signon so; | 284 struct signon so; |
285 char buf[8 * 1024], *c; | 285 char buf[8 * 1024], *c; |
286 char snd[MSG_LEN]; | 286 char snd[BUF_LEN * 2]; |
287 | 287 |
288 if (condition & GDK_INPUT_EXCEPTION) { | 288 if (condition & GDK_INPUT_EXCEPTION) { |
289 debug_printf("gdk_input exception! check internet connection\n"); | 289 debug_printf("gdk_input exception! check internet connection\n"); |
290 hide_login_progress(gc, _("Connection Closed")); | 290 hide_login_progress(gc, _("Connection Closed")); |
291 signoff(gc); | 291 signoff(gc); |
685 return "TOC"; | 685 return "TOC"; |
686 } | 686 } |
687 | 687 |
688 static void toc_send_im(struct gaim_connection *gc, char *name, char *message, int away) | 688 static void toc_send_im(struct gaim_connection *gc, char *name, char *message, int away) |
689 { | 689 { |
690 char buf[MSG_LEN - 7]; | 690 char buf[BUF_LEN * 2]; |
691 | 691 |
692 escape_text(message); | 692 escape_text(message); |
693 g_snprintf(buf, MSG_LEN - 8, "toc_send_im %s \"%s\"%s", normalize(name), | 693 g_snprintf(buf, MSG_LEN - 8, "toc_send_im %s \"%s\"%s", normalize(name), |
694 message, ((away) ? " auto" : "")); | 694 message, ((away) ? " auto" : "")); |
695 sflap_send(gc, buf, -1, TYPE_DATA); | 695 sflap_send(gc, buf, -1, TYPE_DATA); |
696 } | 696 } |
697 | 697 |
698 static void toc_set_config(struct gaim_connection *gc) | 698 static void toc_set_config(struct gaim_connection *gc) |
699 { | 699 { |
700 char buf[MSG_LEN], snd[MSG_LEN]; | 700 char buf[MSG_LEN], snd[BUF_LEN * 2]; |
701 toc_build_config(gc, buf, MSG_LEN, FALSE); | 701 toc_build_config(gc, buf, MSG_LEN, FALSE); |
702 g_snprintf(snd, MSG_LEN, "toc_set_config {%s}", buf); | 702 g_snprintf(snd, MSG_LEN, "toc_set_config {%s}", buf); |
703 sflap_send(gc, snd, -1, TYPE_DATA); | 703 sflap_send(gc, snd, -1, TYPE_DATA); |
704 } | 704 } |
705 | 705 |
706 static void toc_get_info(struct gaim_connection *g, char *name) | 706 static void toc_get_info(struct gaim_connection *g, char *name) |
707 { | 707 { |
708 char buf[MSG_LEN]; | 708 char buf[BUF_LEN * 2]; |
709 g_snprintf(buf, MSG_LEN, "toc_get_info %s", normalize(name)); | 709 g_snprintf(buf, MSG_LEN, "toc_get_info %s", normalize(name)); |
710 sflap_send(g, buf, -1, TYPE_DATA); | 710 sflap_send(g, buf, -1, TYPE_DATA); |
711 } | 711 } |
712 | 712 |
713 static void toc_get_dir(struct gaim_connection *g, char *name) | 713 static void toc_get_dir(struct gaim_connection *g, char *name) |
714 { | 714 { |
715 char buf[MSG_LEN]; | 715 char buf[BUF_LEN * 2]; |
716 g_snprintf(buf, MSG_LEN, "toc_get_dir %s", normalize(name)); | 716 g_snprintf(buf, MSG_LEN, "toc_get_dir %s", normalize(name)); |
717 sflap_send(g, buf, -1, TYPE_DATA); | 717 sflap_send(g, buf, -1, TYPE_DATA); |
718 } | 718 } |
719 | 719 |
720 static void toc_set_dir(struct gaim_connection *g, char *first, char *middle, char *last, | 720 static void toc_set_dir(struct gaim_connection *g, char *first, char *middle, char *last, |
739 sflap_send(g, buf, -1, TYPE_DATA); | 739 sflap_send(g, buf, -1, TYPE_DATA); |
740 } | 740 } |
741 | 741 |
742 static void toc_set_away(struct gaim_connection *g, char *state, char *message) | 742 static void toc_set_away(struct gaim_connection *g, char *state, char *message) |
743 { | 743 { |
744 char buf[MSG_LEN]; | 744 char buf[BUF_LEN * 2]; |
745 if (g->away) | 745 if (g->away) |
746 g_free (g->away); | 746 g_free (g->away); |
747 g->away = NULL; | 747 g->away = NULL; |
748 if (message) { | 748 if (message) { |
749 g->away = g_strdup (message); | 749 g->away = g_strdup (message); |
754 sflap_send(g, buf, -1, TYPE_DATA); | 754 sflap_send(g, buf, -1, TYPE_DATA); |
755 } | 755 } |
756 | 756 |
757 static void toc_set_info(struct gaim_connection *g, char *info) | 757 static void toc_set_info(struct gaim_connection *g, char *info) |
758 { | 758 { |
759 char buf[MSG_LEN], buf2[MSG_LEN]; | 759 char buf[BUF_LEN * 2], buf2[BUF_LEN * 2]; |
760 g_snprintf(buf2, sizeof buf2, "%s", info); | 760 g_snprintf(buf2, sizeof buf2, "%s", info); |
761 escape_text(buf2); | 761 escape_text(buf2); |
762 g_snprintf(buf, sizeof(buf), "toc_set_info \"%s\n\"", buf2); | 762 g_snprintf(buf, sizeof(buf), "toc_set_info \"%s\n\"", buf2); |
763 sflap_send(g, buf, -1, TYPE_DATA); | 763 sflap_send(g, buf, -1, TYPE_DATA); |
764 } | 764 } |
765 | 765 |
766 static void toc_change_passwd(struct gaim_connection *g, char *orig, char *new) | 766 static void toc_change_passwd(struct gaim_connection *g, char *orig, char *new) |
767 { | 767 { |
768 char buf[MSG_LEN]; | 768 char buf[BUF_LEN * 2]; |
769 g_snprintf(buf, BUF_LONG, "toc_change_passwd %s %s", orig, new); | 769 g_snprintf(buf, BUF_LONG, "toc_change_passwd %s %s", orig, new); |
770 sflap_send(g, buf, strlen(buf), TYPE_DATA); | 770 sflap_send(g, buf, strlen(buf), TYPE_DATA); |
771 } | 771 } |
772 | 772 |
773 static void toc_add_buddy(struct gaim_connection *g, char *name) | 773 static void toc_add_buddy(struct gaim_connection *g, char *name) |
774 { | 774 { |
775 char buf[1024]; | 775 char buf[BUF_LEN * 2]; |
776 g_snprintf(buf, sizeof(buf), "toc_add_buddy %s", normalize(name)); | 776 g_snprintf(buf, sizeof(buf), "toc_add_buddy %s", normalize(name)); |
777 sflap_send(g, buf, -1, TYPE_DATA); | 777 sflap_send(g, buf, -1, TYPE_DATA); |
778 toc_set_config(g); | 778 toc_set_config(g); |
779 } | 779 } |
780 | 780 |
781 static void toc_add_buddies(struct gaim_connection *g, GList * buddies) | 781 static void toc_add_buddies(struct gaim_connection *g, GList * buddies) |
782 { | 782 { |
783 char buf[MSG_LEN]; | 783 char buf[BUF_LEN * 2]; |
784 int n; | 784 int n; |
785 | 785 |
786 n = g_snprintf(buf, sizeof(buf), "toc_add_buddy"); | 786 n = g_snprintf(buf, sizeof(buf), "toc_add_buddy"); |
787 while (buddies) { | 787 while (buddies) { |
788 if (strlen(normalize(buddies->data)) > MSG_LEN - n - 16) { | 788 if (strlen(normalize(buddies->data)) > MSG_LEN - n - 16) { |
795 sflap_send(g, buf, -1, TYPE_DATA); | 795 sflap_send(g, buf, -1, TYPE_DATA); |
796 } | 796 } |
797 | 797 |
798 static void toc_remove_buddy(struct gaim_connection *g, char *name) | 798 static void toc_remove_buddy(struct gaim_connection *g, char *name) |
799 { | 799 { |
800 char buf[1024]; | 800 char buf[BUF_LEN * 2]; |
801 g_snprintf(buf, sizeof(buf), "toc_remove_buddy %s", normalize(name)); | 801 g_snprintf(buf, sizeof(buf), "toc_remove_buddy %s", normalize(name)); |
802 sflap_send(g, buf, -1, TYPE_DATA); | 802 sflap_send(g, buf, -1, TYPE_DATA); |
803 toc_set_config(g); | 803 toc_set_config(g); |
804 } | 804 } |
805 | 805 |
806 static void toc_set_idle(struct gaim_connection *g, int time) | 806 static void toc_set_idle(struct gaim_connection *g, int time) |
807 { | 807 { |
808 char buf[256]; | 808 char buf[BUF_LEN * 2]; |
809 g_snprintf(buf, sizeof(buf), "toc_set_idle %d", time); | 809 g_snprintf(buf, sizeof(buf), "toc_set_idle %d", time); |
810 sflap_send(g, buf, -1, TYPE_DATA); | 810 sflap_send(g, buf, -1, TYPE_DATA); |
811 } | 811 } |
812 | 812 |
813 static void toc_warn(struct gaim_connection *g, char *name, int anon) | 813 static void toc_warn(struct gaim_connection *g, char *name, int anon) |
814 { | 814 { |
815 char send[256]; | 815 char send[BUF_LEN * 2]; |
816 g_snprintf(send, 255, "toc_evil %s %s", name, ((anon) ? "anon" : "norm")); | 816 g_snprintf(send, 255, "toc_evil %s %s", name, ((anon) ? "anon" : "norm")); |
817 sflap_send(g, send, -1, TYPE_DATA); | 817 sflap_send(g, send, -1, TYPE_DATA); |
818 } | 818 } |
819 | 819 |
820 static void toc_accept_chat(struct gaim_connection *g, int i) | 820 static void toc_accept_chat(struct gaim_connection *g, int i) |
821 { | 821 { |
822 char buf[256]; | 822 char buf[BUF_LEN * 2]; |
823 g_snprintf(buf, 255, "toc_chat_accept %d", i); | 823 g_snprintf(buf, 255, "toc_chat_accept %d", i); |
824 sflap_send(g, buf, -1, TYPE_DATA); | 824 sflap_send(g, buf, -1, TYPE_DATA); |
825 } | 825 } |
826 | 826 |
827 static void toc_join_chat(struct gaim_connection *g, int exchange, char *name) | 827 static void toc_join_chat(struct gaim_connection *g, int exchange, char *name) |
840 | 840 |
841 static void toc_chat_leave(struct gaim_connection *g, int id) | 841 static void toc_chat_leave(struct gaim_connection *g, int id) |
842 { | 842 { |
843 GSList *bcs = g->buddy_chats; | 843 GSList *bcs = g->buddy_chats; |
844 struct conversation *b = NULL; | 844 struct conversation *b = NULL; |
845 char buf[256]; | 845 char buf[BUF_LEN * 2]; |
846 | 846 |
847 while (bcs) { | 847 while (bcs) { |
848 b = (struct conversation *)bcs->data; | 848 b = (struct conversation *)bcs->data; |
849 if (id == b->id) | 849 if (id == b->id) |
850 break; | 850 break; |
863 } | 863 } |
864 } | 864 } |
865 | 865 |
866 static void toc_chat_whisper(struct gaim_connection *g, int id, char *who, char *message) | 866 static void toc_chat_whisper(struct gaim_connection *g, int id, char *who, char *message) |
867 { | 867 { |
868 char buf2[MSG_LEN]; | 868 char buf2[BUF_LEN * 2]; |
869 g_snprintf(buf2, sizeof(buf2), "toc_chat_whisper %d %s \"%s\"", id, who, message); | 869 g_snprintf(buf2, sizeof(buf2), "toc_chat_whisper %d %s \"%s\"", id, who, message); |
870 sflap_send(g, buf2, -1, TYPE_DATA); | 870 sflap_send(g, buf2, -1, TYPE_DATA); |
871 } | 871 } |
872 | 872 |
873 static void toc_chat_send(struct gaim_connection *g, int id, char *message) | 873 static void toc_chat_send(struct gaim_connection *g, int id, char *message) |
874 { | 874 { |
875 char buf[MSG_LEN]; | 875 char buf[BUF_LEN * 2]; |
876 escape_text(message); | 876 escape_text(message); |
877 g_snprintf(buf, sizeof(buf), "toc_chat_send %d \"%s\"", id, message); | 877 g_snprintf(buf, sizeof(buf), "toc_chat_send %d \"%s\"", id, message); |
878 sflap_send(g, buf, -1, TYPE_DATA); | 878 sflap_send(g, buf, -1, TYPE_DATA); |
879 } | 879 } |
880 | 880 |
1087 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(opt), TRUE); | 1087 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(opt), TRUE); |
1088 } | 1088 } |
1089 | 1089 |
1090 static void toc_add_permit(struct gaim_connection *gc, char *who) | 1090 static void toc_add_permit(struct gaim_connection *gc, char *who) |
1091 { | 1091 { |
1092 char buf2[MSG_LEN]; | 1092 char buf2[BUF_LEN * 2]; |
1093 if (gc->permdeny != 3) | 1093 if (gc->permdeny != 3) |
1094 return; | 1094 return; |
1095 g_snprintf(buf2, sizeof(buf2), "toc_add_permit %s", normalize(who)); | 1095 g_snprintf(buf2, sizeof(buf2), "toc_add_permit %s", normalize(who)); |
1096 sflap_send(gc, buf2, -1, TYPE_DATA); | 1096 sflap_send(gc, buf2, -1, TYPE_DATA); |
1097 } | 1097 } |
1098 | 1098 |
1099 static void toc_add_deny(struct gaim_connection *gc, char *who) | 1099 static void toc_add_deny(struct gaim_connection *gc, char *who) |
1100 { | 1100 { |
1101 char buf2[MSG_LEN]; | 1101 char buf2[BUF_LEN * 2]; |
1102 if (gc->permdeny != 4) | 1102 if (gc->permdeny != 4) |
1103 return; | 1103 return; |
1104 g_snprintf(buf2, sizeof(buf2), "toc_add_deny %s", normalize(who)); | 1104 g_snprintf(buf2, sizeof(buf2), "toc_add_deny %s", normalize(who)); |
1105 sflap_send(gc, buf2, -1, TYPE_DATA); | 1105 sflap_send(gc, buf2, -1, TYPE_DATA); |
1106 } | 1106 } |
1107 | 1107 |
1108 static void toc_set_permit_deny(struct gaim_connection *gc) | 1108 static void toc_set_permit_deny(struct gaim_connection *gc) |
1109 { | 1109 { |
1110 char buf2[MSG_LEN]; | 1110 char buf2[BUF_LEN * 2]; |
1111 GSList *list; | 1111 GSList *list; |
1112 int at; | 1112 int at; |
1113 | 1113 |
1114 switch (gc->permdeny) { | 1114 switch (gc->permdeny) { |
1115 case 1: | 1115 case 1: |
1467 { | 1467 { |
1468 struct file_transfer *ft; | 1468 struct file_transfer *ft; |
1469 char *dirname = gtk_file_selection_get_filename(GTK_FILE_SELECTION(old_ft->window)); | 1469 char *dirname = gtk_file_selection_get_filename(GTK_FILE_SELECTION(old_ft->window)); |
1470 int fd; | 1470 int fd; |
1471 struct aim_user *user; | 1471 struct aim_user *user; |
1472 char *buf; | 1472 char buf[BUF_LEN * 2]; |
1473 | 1473 |
1474 if (file_is_dir(dirname, old_ft->window)) | 1474 if (file_is_dir(dirname, old_ft->window)) |
1475 return; | 1475 return; |
1476 ft = g_new0(struct file_transfer, 1); | 1476 ft = g_new0(struct file_transfer, 1); |
1477 if (old_ft->files == 1) | 1477 if (old_ft->files == 1) |
1485 ft->port = old_ft->port; | 1485 ft->port = old_ft->port; |
1486 ft->gc = old_ft->gc; | 1486 ft->gc = old_ft->gc; |
1487 user = ft->gc->user; | 1487 user = ft->gc->user; |
1488 gtk_widget_destroy(old_ft->window); | 1488 gtk_widget_destroy(old_ft->window); |
1489 | 1489 |
1490 buf = g_strdup_printf("toc_rvous_accept %s %s %s", ft->user, ft->cookie, FILE_SEND_UID); | 1490 g_snprintf(buf, sizeof(buf), "toc_rvous_accept %s %s %s", ft->user, ft->cookie, FILE_SEND_UID); |
1491 sflap_send(ft->gc, buf, -1, TYPE_DATA); | 1491 sflap_send(ft->gc, buf, -1, TYPE_DATA); |
1492 g_free(buf); | |
1493 | 1492 |
1494 fd = | 1493 fd = |
1495 proxy_connect(ft->ip, ft->port, | 1494 proxy_connect(ft->ip, ft->port, |
1496 user->proto_opt[USEROPT_SOCKSHOST], | 1495 user->proto_opt[USEROPT_SOCKSHOST], |
1497 atoi(user->proto_opt[USEROPT_SOCKSPORT]), | 1496 atoi(user->proto_opt[USEROPT_SOCKSPORT]), |
1631 struct file_transfer *ft; | 1630 struct file_transfer *ft; |
1632 struct file_header *hdr; | 1631 struct file_header *hdr; |
1633 char *dirname = gtk_file_selection_get_filename(GTK_FILE_SELECTION(old_ft->window)); | 1632 char *dirname = gtk_file_selection_get_filename(GTK_FILE_SELECTION(old_ft->window)); |
1634 int fd; | 1633 int fd; |
1635 struct aim_user *user; | 1634 struct aim_user *user; |
1636 char *buf; | 1635 char *buf, buf2[BUF_LEN * 2]; |
1637 struct stat st; | 1636 struct stat st; |
1638 | 1637 |
1639 if (file_is_dir(dirname, old_ft->window)) | 1638 if (file_is_dir(dirname, old_ft->window)) |
1640 return; | 1639 return; |
1641 ft = g_new0(struct file_transfer, 1); | 1640 ft = g_new0(struct file_transfer, 1); |
1663 ft->port = old_ft->port; | 1662 ft->port = old_ft->port; |
1664 ft->gc = old_ft->gc; | 1663 ft->gc = old_ft->gc; |
1665 user = ft->gc->user; | 1664 user = ft->gc->user; |
1666 gtk_widget_destroy(old_ft->window); | 1665 gtk_widget_destroy(old_ft->window); |
1667 | 1666 |
1668 buf = g_strdup_printf("toc_rvous_accept %s %s %s", ft->user, ft->cookie, FILE_GET_UID); | 1667 g_snprintf(buf2, sizeof(buf2), "toc_rvous_accept %s %s %s", ft->user, ft->cookie, FILE_GET_UID); |
1669 sflap_send(ft->gc, buf, -1, TYPE_DATA); | 1668 sflap_send(ft->gc, buf2, -1, TYPE_DATA); |
1670 g_free(buf); | |
1671 | 1669 |
1672 fd = | 1670 fd = |
1673 proxy_connect(ft->ip, ft->port, | 1671 proxy_connect(ft->ip, ft->port, |
1674 user->proto_opt[USEROPT_SOCKSHOST], | 1672 user->proto_opt[USEROPT_SOCKSHOST], |
1675 atoi(user->proto_opt[USEROPT_SOCKSPORT]), | 1673 atoi(user->proto_opt[USEROPT_SOCKSPORT]), |