Mercurial > pidgin.yaz
annotate libpurple/protocols/jabber/google/relay.c @ 32330:a5b556ac1de5
Rename purple_connection_error_reason to purple_connection_error
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Sun, 21 Aug 2011 08:00:53 +0000 |
parents | a8cc50c2279f |
children | 904686722499 |
rev | line source |
---|---|
30968
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
1 /** |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
2 * Purple is the legal property of its developers, whose names are too numerous |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
3 * to list here. Please refer to the COPYRIGHT file distributed with this |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
4 * source distribution. |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
5 * |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
6 * This program is free software; you can redistribute it and/or modify |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
7 * it under the terms of the GNU General Public License as published by |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
8 * the Free Software Foundation; either version 2 of the License, or |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
9 * (at your option) any later version. |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
10 * |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
11 * This program is distributed in the hope that it will be useful, |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
14 * GNU General Public License for more details. |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
15 * |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
16 * You should have received a copy of the GNU General Public License |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
17 * along with this program; if not, write to the Free Software |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
19 */ |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
20 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
21 #include "internal.h" |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
22 #include "debug.h" |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
23 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
24 #include "relay.h" |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
25 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
26 typedef struct { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
27 GoogleSession *session; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
28 JabberGoogleRelayCallback *cb; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
29 } JabberGoogleRelayCallbackData; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
30 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
31 static void |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
32 jabber_google_relay_parse_response(const gchar *response, gchar **ip, |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
33 guint *udp, guint *tcp, guint *ssltcp, gchar **username, gchar **password) |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
34 { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
35 gchar **lines = g_strsplit(response, "\n", -1); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
36 int i = 0; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
37 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
38 for (; lines[i] ; i++) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
39 gchar *line = lines[i]; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
40 gchar **parts = g_strsplit(line, "=", 2); |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30970
diff
changeset
|
41 |
30968
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
42 if (parts[0] && parts[1]) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
43 if (purple_strequal(parts[0], "relay.ip")) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
44 *ip = g_strdup(parts[1]); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
45 } else if (purple_strequal(parts[0], "relay.udp_port")) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
46 *udp = atoi(parts[1]); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
47 } else if (purple_strequal(parts[0], "relay.tcp_port")) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
48 *tcp = atoi(parts[1]); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
49 } else if (purple_strequal(parts[0], "relay.ssltcp_port")) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
50 *ssltcp = atoi(parts[1]); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
51 } else if (purple_strequal(parts[0], "username")) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
52 *username = g_strdup(parts[1]); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
53 } else if (purple_strequal(parts[0], "password")) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
54 *password = g_strdup(parts[1]); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
55 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
56 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
57 g_strfreev(parts); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
58 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
59 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
60 g_strfreev(lines); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
61 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
62 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
63 static void |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30970
diff
changeset
|
64 jabber_google_relay_remove_url_data(JabberStream *js, |
30968
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
65 PurpleUtilFetchUrlData *url_data) |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
66 { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
67 GList *iter = js->google_relay_requests; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
68 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
69 while (iter) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
70 if (iter->data == url_data) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
71 js->google_relay_requests = |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
72 g_list_delete_link(js->google_relay_requests, iter); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
73 break; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
74 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
75 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
76 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
77 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
78 static void |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30970
diff
changeset
|
79 jabber_google_relay_fetch_cb(PurpleUtilFetchUrlData *url_data, |
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30970
diff
changeset
|
80 gpointer user_data, const gchar *url_text, gsize len, |
30968
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
81 const gchar *error_message) |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
82 { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
83 JabberGoogleRelayCallbackData *data = |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
84 (JabberGoogleRelayCallbackData *) user_data; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
85 GoogleSession *session = data->session; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
86 JabberStream *js = session->js; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
87 JabberGoogleRelayCallback *cb = data->cb; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
88 gchar *relay_ip = NULL; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
89 guint relay_udp = 0; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
90 guint relay_tcp = 0; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
91 guint relay_ssltcp = 0; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
92 gchar *relay_username = NULL; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
93 gchar *relay_password = NULL; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
94 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
95 g_free(data); |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30970
diff
changeset
|
96 |
30968
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
97 if (url_data) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
98 jabber_google_relay_remove_url_data(js, url_data); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
99 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
100 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
101 purple_debug_info("jabber", "got response on HTTP request to relay server\n"); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
102 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
103 if (url_text && len > 0) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
104 purple_debug_info("jabber", "got Google relay request response:\n%s\n", |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
105 url_text); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
106 jabber_google_relay_parse_response(url_text, &relay_ip, &relay_udp, |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
107 &relay_tcp, &relay_ssltcp, &relay_username, &relay_password); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
108 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
109 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
110 if (cb) |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
111 cb(session, relay_ip, relay_udp, relay_tcp, relay_ssltcp, |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
112 relay_username, relay_password); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
113 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
114 g_free(relay_ip); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
115 g_free(relay_username); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
116 g_free(relay_password); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
117 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
118 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
119 void |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
120 jabber_google_do_relay_request(JabberStream *js, GoogleSession *session, |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
121 JabberGoogleRelayCallback cb) |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
122 { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
123 PurpleUtilFetchUrlData *url_data = NULL; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
124 gchar *url = g_strdup_printf("http://%s", js->google_relay_host); |
30970
2a7d721bdfa6
Added comment about including the relay token twice in the HTTP request
Marcus Lundblad <ml@update.uu.se>
parents:
30968
diff
changeset
|
125 /* yes, the relay token is included twice as different request headers, |
2a7d721bdfa6
Added comment about including the relay token twice in the HTTP request
Marcus Lundblad <ml@update.uu.se>
parents:
30968
diff
changeset
|
126 this is apparently needed to make Google's relay servers work... */ |
30968
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
127 gchar *request = |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
128 g_strdup_printf("GET /create_session HTTP/1.0\r\n" |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
129 "Host: %s\r\n" |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
130 "X-Talk-Google-Relay-Auth: %s\r\n" |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30970
diff
changeset
|
131 "X-Google-Relay-Auth: %s\r\n\r\n", |
30968
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
132 js->google_relay_host, js->google_relay_token, js->google_relay_token); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
133 JabberGoogleRelayCallbackData *data = g_new0(JabberGoogleRelayCallbackData, 1); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
134 |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
135 data->session = session; |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
136 data->cb = cb; |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30970
diff
changeset
|
137 purple_debug_info("jabber", |
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30970
diff
changeset
|
138 "sending Google relay request %s to %s\n", request, url); |
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30970
diff
changeset
|
139 url_data = |
30968
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
140 purple_util_fetch_url_request(url, FALSE, NULL, FALSE, request, FALSE, |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
141 jabber_google_relay_fetch_cb, data); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
142 if (url_data) { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
143 js->google_relay_requests = |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
144 g_list_prepend(js->google_relay_requests, url_data); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
145 } else { |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
146 purple_debug_error("jabber", "unable to create Google relay request\n"); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
147 jabber_google_relay_fetch_cb(NULL, data, NULL, 0, NULL); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
148 } |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
149 g_free(url); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
150 g_free(request); |
c954ee775713
added new files for Google relay-related functions
Marcus Lundblad <ml@update.uu.se>
parents:
diff
changeset
|
151 } |