| 166 |
166 |
| 167 purple_http_conn_cancel(jox->hc); |
167 purple_http_conn_cancel(jox->hc); |
| 168 jabber_oob_xfer_recv_error(xfer, "404"); |
168 jabber_oob_xfer_recv_error(xfer, "404"); |
| 169 } |
169 } |
| 170 |
170 |
| 171 static PurpleXferIoOps recieve_ops = |
|
| 172 { |
|
| 173 jabber_oob_xfer_init, /* init */ |
|
| 174 jabber_oob_xfer_recv_denied, /* request_denied */ |
|
| 175 jabber_oob_xfer_start, /* start */ |
|
| 176 jabber_oob_xfer_end, /* end */ |
|
| 177 NULL, /* cancel_send */ |
|
| 178 jabber_oob_xfer_recv_cancelled, /* cancel_recv */ |
|
| 179 NULL, /* read */ |
|
| 180 NULL, /* write */ |
|
| 181 NULL, /* ack */ |
|
| 182 }; |
|
| 183 |
|
| 184 void jabber_oob_parse(JabberStream *js, const char *from, JabberIqType type, |
171 void jabber_oob_parse(JabberStream *js, const char *from, JabberIqType type, |
| 185 const char *id, xmlnode *querynode) { |
172 const char *id, xmlnode *querynode) { |
| 186 JabberOOBXfer *jox; |
173 JabberOOBXfer *jox; |
| 187 PurpleXfer *xfer; |
174 PurpleXfer *xfer; |
| 188 const gchar *filename, *slash; |
175 const gchar *filename, *slash; |
| 219 if (slash == NULL) |
206 if (slash == NULL) |
| 220 filename = url; |
207 filename = url; |
| 221 else |
208 else |
| 222 filename = slash + 1; |
209 filename = slash + 1; |
| 223 purple_xfer_set_filename(xfer, filename); |
210 purple_xfer_set_filename(xfer, filename); |
| 224 purple_xfer_set_io_ops(xfer, &recieve_ops); |
211 |
| |
212 purple_xfer_set_init_fnc(xfer, jabber_oob_xfer_init); |
| |
213 purple_xfer_set_end_fnc(xfer, jabber_oob_xfer_end); |
| |
214 purple_xfer_set_request_denied_fnc(xfer, jabber_oob_xfer_recv_denied); |
| |
215 purple_xfer_set_cancel_recv_fnc(xfer, jabber_oob_xfer_recv_cancelled); |
| |
216 purple_xfer_set_start_fnc(xfer, jabber_oob_xfer_start); |
| 225 |
217 |
| 226 js->oob_file_transfers = g_list_append(js->oob_file_transfers, xfer); |
218 js->oob_file_transfers = g_list_append(js->oob_file_transfers, xfer); |
| 227 |
219 |
| 228 purple_xfer_request(xfer); |
220 purple_xfer_request(xfer); |
| 229 } |
221 } |