view doc/xfer-signals.dox @ 14960:0c80979077cf

[gaim-migrate @ 17738] * Patch from Christopher "cuberoot" to fix the repeated, CPU-intensive call loop on url_fetch_recv_cb() which was discussed on gaim-devl with the subject "Yahoo (and maybe others): gaim_util_fetch_url_request() at 100% CPU until complete with repeated EAGAIN". He writes: "When read() returns 0, that means eof... period. Don't check errno, don't collect $200. The loop was caused by eof condition when errno had previously been EAGAIN/EWOULDBLOCK. The CPU-bound loop stopped when errno happened to be overwritten. I also believe trying to use some/part of an HTTP request on ETIMEDOUT to be a mistake so I removed it. Funny enough the read(2) manpage doesn't document ETIMEDOUT as a possible errno, but it is. (see tcp_timer.c and tcp_subr.c in src/sys/netinet)." This closes Adium Trac ticket #5685. * Added some passing-NULL-to-printf() safety which has been sitting around in this file locally for a while, waiting for a worthwhile commit to accompany. committer: Tailor Script <tailor@pidgin.im>
author Evan Schoenberg <evan.s@dreskin.net>
date Sat, 11 Nov 2006 20:29:35 +0000
parents d0f7f698b6de
children 8cf53d7a0887
line wrap: on
line source

/** @page xfer-signals File Transfer Signals

 @signals
  @signal file-recv-accept
  @signal file-recv-start
  @signal file-recv-cancel
  @signal file-recv-complete
  @signal file-recv-request
  @signal file-send-accept
  @signal file-send-start
  @signal file-send-cancel
  @signal file-send-complete
 @endsignals

 <hr>

 @signaldef file-recv-accept
  @signalproto
void (*file_recv_accept)(GaimXfer *xfer, gpointer data);
  @endsignalproto
  @signaldesc
   Emitted when an incoming file transfer has been accepted.
  @param xfer The file transfer
  @param data User data
 @endsignaldef

 @signaldef file-recv-start
  @signalproto
void (*file_recv_start)(GaimXfer *xfer, gpointer data);
  @endsignalproto
  @signaldesc
   Emitted when an incoming file transfer has been started.
  @param xfer The file transfer
  @param data User data
 @endsignaldef

 @signaldef file-recv-cancel
  @signalproto
void (*file_recv_cancel)(GaimXfer *xfer, gpointer data);
  @endsignalproto
  @signaldesc
   Emitted when an incoming file transfer has been canceled.
  @param xfer The file transfer
  @param data User data
 @endsignaldef

 @signaldef file-recv-complete
  @signalproto
void (*file_recv_complete)(GaimXfer *xfer, gpointer data);
  @endsignalproto
  @signaldesc
   Emitted when an incoming file transfer has been completed.
  @param xfer The file transfer
  @param data User data
 @endsignaldef

 @signaldef file-recv-request
  @signalproto
void (*file_recv_request)(GaimXfer *xfer, gpointer data);
  @endsignalproto
  @signaldesc
   Emitted before the user is prompted for an incoming file-transfer.
   Plugins can intercept the signal to auto-accept/auto-reject the
   requests. To auto-accept the file transfer, use
   gaim_xfer_request_accepted(). To auto-reject, set the status of the
   xfer to GAIM_XFER_STATUS_CANCEL_LOCAL.
  @param xfer The file transfer
  @param data User data
 @endsignaldef

 @signaldef file-send-accept
  @signalproto
void (*file_send_accept)(GaimXfer *xfer, gpointer data);
  @endsignalproto
  @signaldesc
   Emitted when an outgoing file transfer has been accepted.
  @param xfer The file transfer
  @param data User data
 @endsignaldef

 @signaldef file-send-start
  @signalproto
void (*file_send_start)(GaimXfer *xfer, gpointer data);
  @endsignalproto
  @signaldesc
   Emitted when an outgoing file transfer has started.
  @param xfer The file transfer
  @param data User data
 @endsignaldef

 @signaldef file-send-cancel
  @signalproto
void (*file_send_cancel)(GaimXfer *xfer, gpointer data);
  @endsignalproto
  @signaldesc
   Emitted when an outgoing file transfer has been canceled.
  @param xfer The file transfer
  @param data User data
 @endsignaldef

 @signaldef file-send-complete
  @signalproto
void (*file_send_complete)(GaimXfer *xfer, gpointer data);
  @endsignalproto
  @signaldesc
   Emitted when an outgoing file transfer has been completed.
  @param xfer The file transfer
  @param data User data
 @endsignaldef

 */
// vim: syntax=c tw=75 et