pidgin/pidgin

Make all irc login time commands skip the rate limiter.
release-2.x.y
2022-04-27, Gary Kramlich
3230f4408394
Make all irc login time commands skip the rate limiter.

Most networks don't rate limit during the login process but will time you out
if you take too long. Running through the SASL mechansism on Freenode with the
rate limiter was causing us to time out. The ideal solution is to handle the
908 reply and use those mechanisms directly, but I ran into some issues and
this is useful on its own.

Testing Done:
Connected to Freenode and verified we didn't time out during SASL login.

Reviewed at https://reviews.imfreedom.org/r/1391/
/** @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
@see ft.h
<hr>
@signaldef file-recv-accept
@signalproto
void (*file_recv_accept)(PurpleXfer *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)(PurpleXfer *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)(PurpleXfer *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)(PurpleXfer *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)(PurpleXfer *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
purple_xfer_request_accepted(). To auto-reject, set the status of the
xfer to PURPLE_XFER_STATUS_CANCEL_LOCAL.
@param xfer The file transfer
@param data User data
@endsignaldef
@signaldef file-send-accept
@signalproto
void (*file_send_accept)(PurpleXfer *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)(PurpleXfer *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)(PurpleXfer *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)(PurpleXfer *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.doxygen tw=75 et