| 453 |
453 |
| 454 /* Now perform the request */ |
454 /* Now perform the request */ |
| 455 gaim_xfer_request(xfer); |
455 gaim_xfer_request(xfer); |
| 456 } |
456 } |
| 457 |
457 |
| 458 void yahoo_ask_send_file(GaimConnection *gc, const char *who) |
458 void yahoo_send_file(GaimConnection *gc, const char *who, const char *file) |
| 459 { |
459 { |
| 460 GaimXfer *xfer; |
460 GaimXfer *xfer; |
| 461 struct yahoo_xfer_data *xfer_data; |
461 struct yahoo_xfer_data *xfer_data; |
| |
462 |
| |
463 if (!who) |
| |
464 return; |
| 462 |
465 |
| 463 xfer_data = g_new0(struct yahoo_xfer_data, 1); |
466 xfer_data = g_new0(struct yahoo_xfer_data, 1); |
| 464 xfer_data->gc = gc; |
467 xfer_data->gc = gc; |
| 465 |
468 |
| 466 |
469 |
| 476 gaim_xfer_set_cancel_recv_fnc(xfer, yahoo_xfer_cancel_recv); |
479 gaim_xfer_set_cancel_recv_fnc(xfer, yahoo_xfer_cancel_recv); |
| 477 gaim_xfer_set_read_fnc(xfer, yahoo_xfer_read); |
480 gaim_xfer_set_read_fnc(xfer, yahoo_xfer_read); |
| 478 gaim_xfer_set_write_fnc(xfer, yahoo_xfer_write); |
481 gaim_xfer_set_write_fnc(xfer, yahoo_xfer_write); |
| 479 |
482 |
| 480 /* Now perform the request */ |
483 /* Now perform the request */ |
| 481 gaim_xfer_request(xfer); |
484 if (file) |
| 482 } |
485 gaim_xfer_request_accepted(xfer, file); |
| 483 |
486 else |
| 484 void yahoo_send_file(GaimConnection *gc, const char *who, const char *file) |
487 gaim_xfer_request(xfer); |
| 485 { |
488 } |
| 486 GaimXfer *xfer; |
|
| 487 struct yahoo_xfer_data *xfer_data; |
|
| 488 |
|
| 489 if (!who || !file) |
|
| 490 return; |
|
| 491 |
|
| 492 xfer_data = g_new0(struct yahoo_xfer_data, 1); |
|
| 493 xfer_data->gc = gc; |
|
| 494 |
|
| 495 |
|
| 496 /* Build the file transfer handle. */ |
|
| 497 xfer = gaim_xfer_new(gc->account, GAIM_XFER_SEND, who); |
|
| 498 xfer->data = xfer_data; |
|
| 499 |
|
| 500 /* Setup our I/O op functions */ |
|
| 501 gaim_xfer_set_init_fnc(xfer, yahoo_xfer_init); |
|
| 502 gaim_xfer_set_start_fnc(xfer, yahoo_xfer_start); |
|
| 503 gaim_xfer_set_end_fnc(xfer, yahoo_xfer_end); |
|
| 504 gaim_xfer_set_cancel_send_fnc(xfer, yahoo_xfer_cancel_send); |
|
| 505 gaim_xfer_set_cancel_recv_fnc(xfer, yahoo_xfer_cancel_recv); |
|
| 506 gaim_xfer_set_read_fnc(xfer, yahoo_xfer_read); |
|
| 507 gaim_xfer_set_write_fnc(xfer, yahoo_xfer_write); |
|
| 508 |
|
| 509 /* Now perform the request */ |
|
| 510 gaim_xfer_request_accepted(xfer, file); |
|
| 511 } |
|