Sun, 09 Sep 2007 00:43:22 +0000
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
g_free.
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
1 | /** |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
2 | * @file oim.c |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
3 | * get and send MSN offline Instant Message via SOAP request |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
4 | * Author |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
5 | * MaYuan<mayuan2006@gmail.com> |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
6 | * purple |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
7 | * |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
8 | * Purple is the legal property of its developers, whose names are too numerous |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
9 | * to list here. Please refer to the COPYRIGHT file distributed with this |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
10 | * source distribution. |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
11 | * |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
12 | * This program is free software; you can redistribute it and/or modify |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
13 | * it under the terms of the GNU General Public License as published by |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
14 | * the Free Software Foundation; either version 2 of the License, or |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
15 | * (at your option) any later version. |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
16 | * |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
17 | * This program is distributed in the hope that it will be useful, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
18 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
20 | * GNU General Public License for more details. |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
21 | * |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
22 | * You should have received a copy of the GNU General Public License |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
23 | * along with this program; if not, write to the Free Software |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
24 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
25 | */ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
26 | #include "msn.h" |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
27 | #include "soap.h" |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
28 | #include "oim.h" |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
29 | #include "msnutils.h" |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
30 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
31 | /*Local Function Prototype*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
32 | static void msn_oim_post_single_get_msg(MsnOim *oim,const char *msgid); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
33 | static MsnOimSendReq *msn_oim_new_send_req(const char *from_member, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
34 | const char *friendname, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
35 | const char* to_member, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
36 | gint send_seq, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
37 | const char *msg); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
38 | static void msn_oim_retrieve_connect_init(MsnSoapConn *soapconn); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
39 | static void msn_oim_send_connect_init(MsnSoapConn *soapconn); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
40 | static void msn_oim_free_send_req(MsnOimSendReq *req); |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
41 | static void msn_oim_report_to_user(MsnOim *oim, const char *msg_str); |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
42 | static void msn_oim_get_process(MsnOim *oim, const char *oim_msg); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
43 | static char *msn_oim_msg_to_str(MsnOim *oim, const char *body); |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
44 | static void msn_oim_send_process(MsnOim *oim, const char *body, int len); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
45 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
46 | /*new a OIM object*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
47 | MsnOim * |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
48 | msn_oim_new(MsnSession *session) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
49 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
50 | MsnOim *oim; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
51 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
52 | oim = g_new0(MsnOim, 1); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
53 | oim->session = session; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
54 | oim->retrieveconn = msn_soap_new(session,oim,1); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
55 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
56 | oim->oim_list = NULL; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
57 | oim->sendconn = msn_soap_new(session,oim,1); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
58 | oim->run_id = rand_guid(); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
59 | oim->challenge = NULL; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
60 | oim->send_queue = g_queue_new(); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
61 | oim->send_seq = 1; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
62 | return oim; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
63 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
64 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
65 | /*destroy the oim object*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
66 | void |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
67 | msn_oim_destroy(MsnOim *oim) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
68 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
69 | MsnOimSendReq *request; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
70 | |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
71 | purple_debug_info("OIM","destroy the OIM \n"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
72 | msn_soap_destroy(oim->retrieveconn); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
73 | msn_soap_destroy(oim->sendconn); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
74 | g_free(oim->run_id); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
75 | g_free(oim->challenge); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
76 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
77 | while((request = g_queue_pop_head(oim->send_queue)) != NULL){ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
78 | msn_oim_free_send_req(request); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
79 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
80 | g_queue_free(oim->send_queue); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
81 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
82 | g_free(oim); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
83 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
84 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
85 | static MsnOimSendReq * |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
86 | msn_oim_new_send_req(const char *from_member, const char*friendname, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
87 | const char* to_member, gint send_seq, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
88 | const char *msg) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
89 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
90 | MsnOimSendReq *request; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
91 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
92 | request = g_new0(MsnOimSendReq, 1); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
93 | request->from_member =g_strdup(from_member); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
94 | request->friendname = g_strdup(friendname); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
95 | request->to_member = g_strdup(to_member); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
96 | request->send_seq = send_seq; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
97 | request->oim_msg = g_strdup(msg); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
98 | return request; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
99 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
100 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
101 | static void |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
102 | msn_oim_free_send_req(MsnOimSendReq *req) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
103 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
104 | g_return_if_fail(req != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
105 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
106 | g_free(req->from_member); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
107 | g_free(req->friendname); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
108 | g_free(req->to_member); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
109 | g_free(req->oim_msg); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
110 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
111 | g_free(req); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
112 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
113 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
114 | /**************************************** |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
115 | * OIM send SOAP request |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
116 | * **************************************/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
117 | /*encode the message to OIM Message Format*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
118 | static char * |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
119 | msn_oim_msg_to_str(MsnOim *oim, const char *body) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
120 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
121 | char *oim_body,*oim_base64; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
122 | |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
123 | purple_debug_info("MSNP14","encode OIM Message...\n"); |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
124 | oim_base64 = purple_base64_encode((const guchar *)body, strlen(body)); |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
125 | purple_debug_info("MSNP14","encoded base64 body:{%s}\n",oim_base64); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
126 | oim_body = g_strdup_printf(MSN_OIM_MSG_TEMPLATE, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
127 | oim->run_id,oim->send_seq,oim_base64); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
128 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
129 | return oim_body; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
130 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
131 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
132 | /*oim SOAP server login error*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
133 | static void |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
134 | msn_oim_send_error_cb(PurpleSslConnection *gsc, PurpleSslErrorType error, void *data) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
135 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
136 | MsnSoapConn *soapconn = data; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
137 | MsnSession *session; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
138 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
139 | session = soapconn->session; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
140 | g_return_if_fail(session != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
141 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
142 | msn_session_set_error(session, MSN_ERROR_SERV_DOWN, _("Unable to connect to OIM server")); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
143 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
144 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
145 | /*msn oim SOAP server connect process*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
146 | static void |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
147 | msn_oim_send_connect_cb(gpointer data, PurpleSslConnection *gsc, |
|
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
148 | PurpleInputCondition cond) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
149 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
150 | MsnSoapConn *soapconn = data; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
151 | MsnSession * session; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
152 | MsnOim *oim; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
153 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
154 | oim = soapconn->parent; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
155 | g_return_if_fail(oim != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
156 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
157 | session = oim->session; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
158 | g_return_if_fail(session != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
159 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
160 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
161 | /* |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
162 | * Process the send return SOAP string |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
163 | * If got SOAP Fault,get the lock key,and resend it. |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
164 | */ |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
165 | static void |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
166 | msn_oim_send_process(MsnOim *oim, const char *body, int len) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
167 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
168 | xmlnode *responseNode, *bodyNode; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
169 | xmlnode *faultNode, *faultCodeNode, *faultstringNode; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
170 | xmlnode *detailNode, *challengeNode; |
|
20578
82571739414b
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20573
diff
changeset
|
171 | char *faultCodeStr = NULL, *faultstring = NULL; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
172 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
173 | responseNode = xmlnode_from_str(body,len); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
174 | g_return_if_fail(responseNode != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
175 | bodyNode = xmlnode_get_child(responseNode,"Body"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
176 | faultNode = xmlnode_get_child(bodyNode,"Fault"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
177 | if(faultNode == NULL){ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
178 | /*Send OK! return*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
179 | MsnOimSendReq *request; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
180 | |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
181 | purple_debug_info("MSNP14","send OIM OK!"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
182 | xmlnode_free(responseNode); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
183 | request = g_queue_pop_head(oim->send_queue); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
184 | msn_oim_free_send_req(request); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
185 | /*send next buffered Offline Message*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
186 | msn_soap_post(oim->sendconn,NULL,msn_oim_send_connect_init); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
187 | return; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
188 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
189 | /*get the challenge,and repost it*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
190 | faultCodeNode = xmlnode_get_child(faultNode,"faultcode"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
191 | if(faultCodeNode == NULL){ |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
192 | purple_debug_info("MSNP14","faultcode Node is NULL\n"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
193 | goto oim_send_process_fail; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
194 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
195 | faultCodeStr = xmlnode_get_data(faultCodeNode); |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
196 | purple_debug_info("MSNP14","fault code:{%s}\n",faultCodeStr); |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
197 | #if 0 |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
198 | if(!strcmp(faultCodeStr,"q0:AuthenticationFailed")){ |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
199 | /*other Fault Reason?*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
200 | goto oim_send_process_fail; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
201 | } |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
202 | #endif |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
203 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
204 | faultstringNode = xmlnode_get_child(faultNode,"faultstring"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
205 | faultstring = xmlnode_get_data(faultstringNode); |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
206 | purple_debug_info("MSNP14","fault string :{%s}\n",faultstring); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
207 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
208 | /* lock key fault reason, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
209 | * compute the challenge and resend it |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
210 | */ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
211 | detailNode = xmlnode_get_child(faultNode, "detail"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
212 | if(detailNode == NULL){ |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
213 | goto oim_send_process_fail; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
214 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
215 | challengeNode = xmlnode_get_child(detailNode,"LockKeyChallenge"); |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
216 | if (challengeNode == NULL) { |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
217 | goto oim_send_process_fail; |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
218 | } |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
219 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
220 | g_free(oim->challenge); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
221 | oim->challenge = xmlnode_get_data(challengeNode); |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
222 | purple_debug_info("MSNP14","lockkey:{%s}\n",oim->challenge); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
223 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
224 | /*repost the send*/ |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
225 | purple_debug_info("MSNP14","prepare to repost the send...\n"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
226 | msn_oim_send_msg(oim); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
227 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
228 | oim_send_process_fail: |
|
20578
82571739414b
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20573
diff
changeset
|
229 | g_free(faultstring); |
|
82571739414b
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20573
diff
changeset
|
230 | g_free(faultCodeStr); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
231 | xmlnode_free(responseNode); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
232 | return ; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
233 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
234 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
235 | static void |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
236 | msn_oim_send_read_cb(gpointer data, gint source, PurpleInputCondition cond) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
237 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
238 | MsnSoapConn * soapconn = data; |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
239 | MsnSession *session = soapconn->session; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
240 | MsnOim * oim; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
241 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
242 | g_return_if_fail(session != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
243 | oim = soapconn->session->oim; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
244 | g_return_if_fail(oim != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
245 | |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
246 | purple_debug_info("MSNP14","read buffer:{%s}\n",soapconn->body); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
247 | msn_oim_send_process(oim,soapconn->body,soapconn->body_len); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
248 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
249 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
250 | static void |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
251 | msn_oim_send_written_cb(gpointer data, gint source, PurpleInputCondition cond) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
252 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
253 | MsnSoapConn * soapconn = data; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
254 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
255 | soapconn->read_cb = msn_oim_send_read_cb; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
256 | // msn_soap_read_cb(data,source,cond); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
257 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
258 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
259 | void |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
260 | msn_oim_prep_send_msg_info(MsnOim *oim, const char *membername, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
261 | const char* friendname, const char *tomember, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
262 | const char * msg) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
263 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
264 | MsnOimSendReq *request; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
265 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
266 | g_return_if_fail(oim != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
267 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
268 | request = msn_oim_new_send_req(membername,friendname,tomember,oim->send_seq,msg); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
269 | g_queue_push_tail(oim->send_queue,request); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
270 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
271 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
272 | /*post send single message request to oim server*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
273 | void |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
274 | msn_oim_send_msg(MsnOim *oim) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
275 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
276 | MsnSoapReq *soap_request; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
277 | MsnOimSendReq *oim_request; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
278 | char *soap_body,*mspauth; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
279 | char *msg_body; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
280 | char buf[33]; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
281 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
282 | g_return_if_fail(oim != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
283 | oim_request = g_queue_pop_head(oim->send_queue); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
284 | g_return_if_fail(oim_request != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
285 | |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
286 | purple_debug_info("MSNP14","send single OIM Message\n"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
287 | mspauth = g_strdup_printf("t=%s&p=%s", |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
288 | oim->session->passport_info.t, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
289 | oim->session->passport_info.p |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
290 | ); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
291 | g_queue_push_head(oim->send_queue,oim_request); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
292 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
293 | /* if we got the challenge lock key, we compute it |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
294 | * else we go for the SOAP fault and resend it. |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
295 | */ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
296 | if(oim->challenge != NULL){ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
297 | msn_handle_chl(oim->challenge, buf); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
298 | }else{ |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
299 | purple_debug_info("MSNP14","no lock key challenge,wait for SOAP Fault and Resend\n"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
300 | buf[0]='\0'; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
301 | } |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
302 | purple_debug_info("MSNP14","get the lock key challenge {%s}\n",buf); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
303 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
304 | msg_body = msn_oim_msg_to_str(oim, oim_request->oim_msg); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
305 | soap_body = g_strdup_printf(MSN_OIM_SEND_TEMPLATE, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
306 | oim_request->from_member, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
307 | oim_request->friendname, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
308 | oim_request->to_member, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
309 | mspauth, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
310 | MSNP13_WLM_PRODUCT_ID, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
311 | buf, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
312 | oim_request->send_seq, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
313 | msg_body |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
314 | ); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
315 | soap_request = msn_soap_request_new(MSN_OIM_SEND_HOST, |
|
20564
35675dd4a44d
Make buddy and group management actually work, add some SOAP templates, redesign some parts of code and separate some bigger functions into its smaller tasks which are completely unrelated to each other
Carlos Silva <typ0@pidgin.im>
parents:
20550
diff
changeset
|
316 | MSN_OIM_SEND_URL, |
|
35675dd4a44d
Make buddy and group management actually work, add some SOAP templates, redesign some parts of code and separate some bigger functions into its smaller tasks which are completely unrelated to each other
Carlos Silva <typ0@pidgin.im>
parents:
20550
diff
changeset
|
317 | MSN_OIM_SEND_SOAP_ACTION, |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
318 | soap_body, |
|
20564
35675dd4a44d
Make buddy and group management actually work, add some SOAP templates, redesign some parts of code and separate some bigger functions into its smaller tasks which are completely unrelated to each other
Carlos Silva <typ0@pidgin.im>
parents:
20550
diff
changeset
|
319 | NULL, |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
320 | msn_oim_send_read_cb, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
321 | msn_oim_send_written_cb); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
322 | g_free(mspauth); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
323 | g_free(msg_body); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
324 | g_free(soap_body); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
325 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
326 | /*increase the offline Sequence control*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
327 | if(oim->challenge != NULL){ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
328 | oim->send_seq++; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
329 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
330 | msn_soap_post(oim->sendconn,soap_request,msn_oim_send_connect_init); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
331 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
332 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
333 | /**************************************** |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
334 | * OIM delete SOAP request |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
335 | * **************************************/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
336 | static void |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
337 | msn_oim_delete_read_cb(gpointer data, gint source, PurpleInputCondition cond) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
338 | { |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
339 | MsnSoapConn * soapconn = data; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
340 | |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
341 | purple_debug_info("MSNP14","OIM delete read buffer:{%s}\n",soapconn->body); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
342 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
343 | msn_soap_free_read_buf(soapconn); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
344 | /*get next single Offline Message*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
345 | msn_soap_post(soapconn,NULL,msn_oim_retrieve_connect_init); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
346 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
347 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
348 | static void |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
349 | msn_oim_delete_written_cb(gpointer data, gint source, PurpleInputCondition cond) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
350 | { |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
351 | MsnSoapConn * soapconn = data; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
352 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
353 | soapconn->read_cb = msn_oim_delete_read_cb; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
354 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
355 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
356 | /*Post to get the Offline Instant Message*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
357 | static void |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
358 | msn_oim_post_delete_msg(MsnOim *oim,const char *msgid) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
359 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
360 | MsnSoapReq *soap_request; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
361 | const char *soap_body,*t,*p; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
362 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
363 | g_return_if_fail(oim != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
364 | g_return_if_fail(msgid != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
365 | |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
366 | purple_debug_info("MSNP14","Delete single OIM Message {%s}\n",msgid); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
367 | t = oim->session->passport_info.t; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
368 | p = oim->session->passport_info.p; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
369 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
370 | soap_body = g_strdup_printf(MSN_OIM_DEL_TEMPLATE, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
371 | t, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
372 | p, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
373 | msgid |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
374 | ); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
375 | soap_request = msn_soap_request_new(MSN_OIM_RETRIEVE_HOST, |
|
20564
35675dd4a44d
Make buddy and group management actually work, add some SOAP templates, redesign some parts of code and separate some bigger functions into its smaller tasks which are completely unrelated to each other
Carlos Silva <typ0@pidgin.im>
parents:
20550
diff
changeset
|
376 | MSN_OIM_RETRIEVE_URL, |
|
35675dd4a44d
Make buddy and group management actually work, add some SOAP templates, redesign some parts of code and separate some bigger functions into its smaller tasks which are completely unrelated to each other
Carlos Silva <typ0@pidgin.im>
parents:
20550
diff
changeset
|
377 | MSN_OIM_DEL_SOAP_ACTION, |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
378 | soap_body, |
|
20564
35675dd4a44d
Make buddy and group management actually work, add some SOAP templates, redesign some parts of code and separate some bigger functions into its smaller tasks which are completely unrelated to each other
Carlos Silva <typ0@pidgin.im>
parents:
20550
diff
changeset
|
379 | NULL, |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
380 | msn_oim_delete_read_cb, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
381 | msn_oim_delete_written_cb); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
382 | msn_soap_post(oim->retrieveconn,soap_request,msn_oim_retrieve_connect_init); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
383 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
384 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
385 | /**************************************** |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
386 | * OIM get SOAP request |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
387 | * **************************************/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
388 | /*oim SOAP server login error*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
389 | static void |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
390 | msn_oim_get_error_cb(PurpleSslConnection *gsc, PurpleSslErrorType error, void *data) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
391 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
392 | MsnSoapConn *soapconn = data; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
393 | MsnSession *session; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
394 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
395 | session = soapconn->session; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
396 | g_return_if_fail(session != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
397 | msn_soap_clean_unhandled_request(soapconn); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
398 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
399 | // msn_session_set_error(session, MSN_ERROR_SERV_DOWN, _("Unable to connect to OIM server")); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
400 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
401 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
402 | /*msn oim SOAP server connect process*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
403 | static void |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
404 | msn_oim_get_connect_cb(gpointer data, PurpleSslConnection *gsc, |
|
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
405 | PurpleInputCondition cond) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
406 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
407 | MsnSoapConn *soapconn = data; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
408 | MsnSession * session; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
409 | MsnOim *oim; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
410 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
411 | oim = soapconn->parent; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
412 | g_return_if_fail(oim != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
413 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
414 | session = oim->session; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
415 | g_return_if_fail(session != NULL); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
416 | |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
417 | purple_debug_info("MSNP14","oim get SOAP Server connected!\n"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
418 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
419 | |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
420 | /* like purple_str_to_time, but different. The format of the timestamp |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
421 | * is like this: 5 Sep 2007 21:42:12 -0700 */ |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
422 | static time_t |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
423 | msn_oim_parse_timestamp(const char *timestamp) |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
424 | { |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
425 | char month_str[4], tz_str[6]; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
426 | char *tz_ptr = tz_str; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
427 | static const char *months[] = { |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
428 | "Jan", "Feb", "Mar", "Apr", "May", "Jun", |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
429 | "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", NULL |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
430 | }; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
431 | struct tm t; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
432 | memset(&t, 0, sizeof(t)); |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
433 | |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
434 | if (sscanf(timestamp, "%02d %03s %04d %02d:%02d:%02d %05s", |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
435 | &t.tm_mday, month_str, &t.tm_year, |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
436 | &t.tm_hour, &t.tm_min, &t.tm_sec, tz_str) == 7) { |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
437 | gboolean offset_positive = TRUE; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
438 | int tzhrs; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
439 | int tzmins; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
440 | |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
441 | for (t.tm_mon = 0; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
442 | months[t.tm_mon] != NULL && |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
443 | strcmp(months[t.tm_mon], month_str) != 0; t.tm_mon++); |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
444 | if (months[t.tm_mon] != NULL) { |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
445 | if (*tz_str == '-') { |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
446 | offset_positive = FALSE; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
447 | tz_ptr++; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
448 | } |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
449 | |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
450 | if (sscanf(tz_ptr, "%02d%02d", &tzhrs, &tzmins) == 2) { |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
451 | t.tm_year -= 1900; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
452 | #if HAVE_TIMEZONE |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
453 | t.tm_gmtoff = tzhrs * 60 * 60 + tzmins * 60; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
454 | if (!offset_positive) |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
455 | t.tm_gmtoff *= -1; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
456 | #endif |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
457 | t.tm_isdst = 0; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
458 | return mktime(&t); |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
459 | } |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
460 | } |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
461 | } |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
462 | |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
463 | purple_debug_info("MSNP14:OIM", "Can't parse timestamp %s\n", timestamp); |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
464 | return time(NULL); |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
465 | } |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
466 | |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
467 | /*Post the Offline Instant Message to User Conversation*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
468 | static void |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
469 | msn_oim_report_to_user(MsnOim *oim, const char *msg_str) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
470 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
471 | MsnMessage *message; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
472 | char *date,*from,*decode_msg; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
473 | gsize body_len; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
474 | char **tokens; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
475 | char *start,*end; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
476 | int has_nick = 0; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
477 | char *passport_str, *passport; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
478 | char *msg_id; |
|
20518
8aa1360ee12a
Parse the message timestamp using purple_str_to_time. I haven't been able
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20516
diff
changeset
|
479 | time_t stamp; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
480 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
481 | message = msn_message_new(MSN_MSG_UNKNOWN); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
482 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
483 | msn_message_parse_payload(message, msg_str, strlen(msg_str), |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
484 | MSG_OIM_LINE_DEM, MSG_OIM_BODY_DEM); |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
485 | purple_debug_info("MSNP14","oim body:{%s}\n",message->body); |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
486 | decode_msg = (char *)purple_base64_decode(message->body,&body_len); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
487 | date = (char *)g_hash_table_lookup(message->attr_table, "Date"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
488 | from = (char *)g_hash_table_lookup(message->attr_table, "From"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
489 | if(strstr(from," ")){ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
490 | has_nick = 1; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
491 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
492 | if(has_nick){ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
493 | tokens = g_strsplit(from , " " , 2); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
494 | passport_str = g_strdup(tokens[1]); |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
495 | purple_debug_info("MSNP14","oim Date:{%s},nickname:{%s},tokens[1]:{%s} passport{%s}\n", |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
496 | date,tokens[0],tokens[1],passport_str); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
497 | g_strfreev(tokens); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
498 | }else{ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
499 | passport_str = g_strdup(from); |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
500 | purple_debug_info("MSNP14","oim Date:{%s},passport{%s}\n", |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
501 | date,passport_str); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
502 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
503 | start = strstr(passport_str,"<"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
504 | start += 1; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
505 | end = strstr(passport_str,">"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
506 | passport = g_strndup(start,end - start); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
507 | g_free(passport_str); |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
508 | purple_debug_info("MSNP14","oim Date:{%s},passport{%s}\n",date,passport); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
509 | |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
510 | stamp = msn_oim_parse_timestamp(date); |
|
20518
8aa1360ee12a
Parse the message timestamp using purple_str_to_time. I haven't been able
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20516
diff
changeset
|
511 | |
|
8aa1360ee12a
Parse the message timestamp using purple_str_to_time. I haven't been able
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20516
diff
changeset
|
512 | serv_got_im(oim->session->account->gc, passport, decode_msg, 0, stamp); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
513 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
514 | /*Now get the oim message ID from the oim_list. |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
515 | * and append to read list to prepare for deleting the Offline Message when sign out |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
516 | */ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
517 | if(oim->oim_list != NULL){ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
518 | msg_id = oim->oim_list->data; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
519 | msn_oim_post_delete_msg(oim,msg_id); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
520 | oim->oim_list = g_list_remove(oim->oim_list, oim->oim_list->data); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
521 | g_free(msg_id); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
522 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
523 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
524 | g_free(passport); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
525 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
526 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
527 | /* Parse the XML data, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
528 | * prepare to report the OIM to user |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
529 | */ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
530 | static void |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
531 | msn_oim_get_process(MsnOim *oim, const char *oim_msg) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
532 | { |
|
20578
82571739414b
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20573
diff
changeset
|
533 | xmlnode *oim_node,*bodyNode,*responseNode,*msgNode; |
|
82571739414b
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20573
diff
changeset
|
534 | char *msg_str; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
535 | |
|
20578
82571739414b
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20573
diff
changeset
|
536 | oim_node = xmlnode_from_str(oim_msg, strlen(oim_msg)); |
|
82571739414b
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20573
diff
changeset
|
537 | bodyNode = xmlnode_get_child(oim_node,"Body"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
538 | responseNode = xmlnode_get_child(bodyNode,"GetMessageResponse"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
539 | msgNode = xmlnode_get_child(responseNode,"GetMessageResult"); |
|
20578
82571739414b
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20573
diff
changeset
|
540 | msg_str = xmlnode_get_data(msgNode); |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
541 | purple_debug_info("OIM","msg:{%s}\n",msg_str); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
542 | msn_oim_report_to_user(oim,msg_str); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
543 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
544 | g_free(msg_str); |
|
20578
82571739414b
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20573
diff
changeset
|
545 | xmlnode_free(oim_node); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
546 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
547 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
548 | static void |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
549 | msn_oim_get_read_cb(gpointer data, gint source, PurpleInputCondition cond) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
550 | { |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
551 | MsnSoapConn * soapconn = data; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
552 | MsnOim * oim = soapconn->session->oim; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
553 | |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
554 | purple_debug_info("MSNP14","OIM get read buffer:{%s}\n",soapconn->body); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
555 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
556 | /*we need to process the read message!*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
557 | msn_oim_get_process(oim,soapconn->body); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
558 | msn_soap_free_read_buf(soapconn); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
559 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
560 | /*get next single Offline Message*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
561 | msn_soap_post(soapconn,NULL,msn_oim_retrieve_connect_init); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
562 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
563 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
564 | static void |
|
20484
4a410a579a80
Fix up some gaim -> purple issues.
Richard Laager <rlaager@pidgin.im>
parents:
20481
diff
changeset
|
565 | msn_oim_get_written_cb(gpointer data, gint source, PurpleInputCondition cond) |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
566 | { |
|
20513
351eb76ee992
Compile warning fixes
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20485
diff
changeset
|
567 | MsnSoapConn * soapconn = data; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
568 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
569 | soapconn->read_cb = msn_oim_get_read_cb; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
570 | // msn_soap_read_cb(data,source,cond); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
571 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
572 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
573 | /* parse the oim XML data |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
574 | * and post it to the soap server to get the Offline Message |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
575 | * */ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
576 | void |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
577 | msn_parse_oim_msg(MsnOim *oim,const char *xmlmsg) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
578 | { |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
579 | xmlnode *node, *mNode,*ENode,*INode,*rtNode,*nNode; |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
580 | char *passport,*msgid,*nickname, *unread, *rTime = NULL; |
|
20527
1ee8b2a70ed7
Compile fix, whoops! Thanks Masca/salinasv.
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20526
diff
changeset
|
581 | MsnSession *session = oim->session; |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
582 | |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
583 | purple_debug_info("MSNP14:OIM", "%s", xmlmsg); |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
584 | |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
585 | node = xmlnode_from_str(xmlmsg, strlen(xmlmsg)); |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
586 | if (strcmp(node->name, "MD") != 0) { |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
587 | xmlnode_free(node); |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
588 | return; |
|
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
589 | } |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
590 | |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
591 | ENode = xmlnode_get_child(node, "E"); |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
592 | INode = xmlnode_get_child(ENode, "IU"); |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
593 | unread = xmlnode_get_data(INode); |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
594 | |
|
20526
80996d766b46
Don't notify for initial email messages unless the preference is set for
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20522
diff
changeset
|
595 | if (unread != NULL && purple_account_get_check_mail(session->account)) |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
596 | { |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
597 | int count = atoi(unread); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
598 | |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
599 | if (count > 0) |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
600 | { |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
601 | const char *passport; |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
602 | const char *url; |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
603 | |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
604 | passport = msn_user_get_passport(session->user); |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
605 | url = session->passport_info.file; |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
606 | |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
607 | purple_notify_emails(session->account->gc, atoi(unread), FALSE, NULL, NULL, |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
608 | &passport, &url, NULL, NULL); |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
609 | } |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
610 | } |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
611 | |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
612 | for(mNode = xmlnode_get_child(node, "M"); mNode; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
613 | mNode = xmlnode_get_next_twin(mNode)){ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
614 | /*email Node*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
615 | ENode = xmlnode_get_child(mNode,"E"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
616 | passport = xmlnode_get_data(ENode); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
617 | /*Index */ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
618 | INode = xmlnode_get_child(mNode,"I"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
619 | msgid = xmlnode_get_data(INode); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
620 | /*Nickname*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
621 | nNode = xmlnode_get_child(mNode,"N"); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
622 | nickname = xmlnode_get_data(nNode); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
623 | /*receive time*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
624 | rtNode = xmlnode_get_child(mNode,"RT"); |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
625 | if(rtNode != NULL) { |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
626 | rTime = xmlnode_get_data(rtNode); |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
627 | rtNode = NULL; |
|
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
628 | } |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
629 | /* purple_debug_info("MSNP14","E:{%s},I:{%s},rTime:{%s}\n",passport,msgid,rTime); */ |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
630 | |
|
20573
d4d5f8079126
mostly fixed offline messaging, still 2 bugs:
Ka-Hing Cheung <khc@pidgin.im>
parents:
20564
diff
changeset
|
631 | oim->oim_list = g_list_append(oim->oim_list,strdup(msgid)); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
632 | msn_oim_post_single_get_msg(oim,msgid); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
633 | g_free(passport); |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
634 | g_free(msgid); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
635 | g_free(rTime); |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
636 | rTime = NULL; |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
637 | g_free(nickname); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
638 | } |
|
20578
82571739414b
Fix some memory leaks. Free xmlnodes properly using xmlnode_free instead of
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
20573
diff
changeset
|
639 | g_free(unread); |
|
20522
177cad886d4c
A bunch of MSNP14 stuff:
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
20518
diff
changeset
|
640 | xmlnode_free(node); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
641 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
642 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
643 | /*Post to get the Offline Instant Message*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
644 | static void |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
645 | msn_oim_post_single_get_msg(MsnOim *oim,const char *msgid) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
646 | { |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
647 | MsnSoapReq *soap_request; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
648 | const char *soap_body,*t,*p; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
649 | |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
650 | purple_debug_info("MSNP14","Get single OIM Message\n"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
651 | t = oim->session->passport_info.t; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
652 | p = oim->session->passport_info.p; |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
653 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
654 | soap_body = g_strdup_printf(MSN_OIM_GET_TEMPLATE, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
655 | t, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
656 | p, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
657 | msgid |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
658 | ); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
659 | soap_request = msn_soap_request_new(MSN_OIM_RETRIEVE_HOST, |
|
20564
35675dd4a44d
Make buddy and group management actually work, add some SOAP templates, redesign some parts of code and separate some bigger functions into its smaller tasks which are completely unrelated to each other
Carlos Silva <typ0@pidgin.im>
parents:
20550
diff
changeset
|
660 | MSN_OIM_RETRIEVE_URL, |
|
35675dd4a44d
Make buddy and group management actually work, add some SOAP templates, redesign some parts of code and separate some bigger functions into its smaller tasks which are completely unrelated to each other
Carlos Silva <typ0@pidgin.im>
parents:
20550
diff
changeset
|
661 | MSN_OIM_GET_SOAP_ACTION, |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
662 | soap_body, |
|
20564
35675dd4a44d
Make buddy and group management actually work, add some SOAP templates, redesign some parts of code and separate some bigger functions into its smaller tasks which are completely unrelated to each other
Carlos Silva <typ0@pidgin.im>
parents:
20550
diff
changeset
|
663 | NULL, |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
664 | msn_oim_get_read_cb, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
665 | msn_oim_get_written_cb); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
666 | msn_soap_post(oim->retrieveconn,soap_request,msn_oim_retrieve_connect_init); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
667 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
668 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
669 | /*msn oim retrieve server connect init */ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
670 | static void |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
671 | msn_oim_retrieve_connect_init(MsnSoapConn *soapconn) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
672 | { |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
673 | purple_debug_info("MSNP14","msn_oim_connect...\n"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
674 | msn_soap_init(soapconn,MSN_OIM_RETRIEVE_HOST,1, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
675 | msn_oim_get_connect_cb, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
676 | msn_oim_get_error_cb); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
677 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
678 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
679 | /*Msn OIM Send Server Connect Init Function*/ |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
680 | static void |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
681 | msn_oim_send_connect_init(MsnSoapConn *sendconn) |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
682 | { |
|
20550
af5abde0d99f
Misc cleanups, better error handling, and print the Address Book received from the server in a human readable way.
Carlos Silva <typ0@pidgin.im>
parents:
20527
diff
changeset
|
683 | purple_debug_info("MSNP14","msn oim send connect init...\n"); |
|
20478
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
684 | msn_soap_init(sendconn,MSN_OIM_SEND_HOST,1, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
685 | msn_oim_send_connect_cb, |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
686 | msn_oim_send_error_cb); |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
687 | } |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
688 | |
|
46933dc62880
propagate from branch 'im.pidgin.pidgin' (head 88b7040408c88e4516c008f4eac579f98ef53e85)
Richard Laager <rlaager@pidgin.im>
parents:
diff
changeset
|
689 | /*endof oim.c*/ |