view doc/connection-signals.dox @ 32796:5ae7e1f36b43

Fix a possible XMPP remote crash A series of specially crafted file transfer requests can cause clients to reference invalid memory. The user must have accepted one of the file transfer requests. The fix is to correctly cancel and free a SOCKS5 connection attempt so that it does not trigger an attempt to access invalid memory later. This was reported to us by Jos«± Valent«żn Guti«±rrez and this patch is written by Paul Aurich.
author Mark Doliner <mark@kingant.net>
date Mon, 07 May 2012 03:16:31 +0000
parents 50729e095c3c
children 02a2e8183b1d
line wrap: on
line source

/** @page connection-signals Connection Signals

 @signals
  @signal signing-on
  @signal signed-on
  @signal autojoin
  @signal signing-off
  @signal signed-off
  @signal connection-error
 @endsignals

 @see connection.h

 <hr>

 @signaldef signing-on
  @signalproto
void (*signing_on)(PurpleConnection *gc);
  @endsignalproto
  @signaldesc
   Emitted when a connection is about to sign on.
  @param gc The connection that is about to sign on.
 @endsignaldef

 @signaldef signed-on
  @signalproto
void (*signed_on)(PurpleConnection *gc);
  @endsignalproto
  @signaldesc
   Emitted when a connection has signed on.
  @param gc The connection that has signed on.
 @endsignaldef

 @signaldef autojoin
  @signalproto
gboolean (*autojoin)(PurpleConnection *gc);
  @endsignalproto
  @signaldesc
   Emitted when a connection has signed on, after the signed-on signal, to
   signal UIs to autojoin chats if they wish.  UIs should connect to this
   with @c PURPLE_SIGNAL_PRIORITY_HIGHEST to allow plugins to block this
   signal before the UI sees it and then re-emit it later.
  @param gc The connection that has signed on.
  @return @c TRUE if the signal was handled or @c FALSE otherwise.  In
          practice, the return value is irrelevant, as it really only
          exists so plugins can block the UI's autojoin.
  @since 2.7.0
 @endsignaldef

 @signaldef signing-off
  @signalproto
void (*signing_off)(PurpleConnection *gc);
  @endsignalproto
  @signaldesc
   Emitted when a connection is about to sign off.
  @param gc The connection that is about to sign off.
 @endsignaldef

 @signaldef signed-off
  @signalproto
void (*signed_off)(PurpleConnection *gc);
  @endsignalproto
  @signaldesc
   Emitted when a connection has signed off.
  @param gc The connection that has signed off.
 @endsignaldef

 @signaldef connection-error
  @signalproto
void (*connection_error)(PurpleConnection *gc, PurpleConnectionError err, const gchar *desc)
  @endsignalproto
  @signaldesc
   Emitted when a connection error occurs, before @ref signed-off.
   @param gc     The connection on which the error has occurred
   @param err    The error that occurred
   @param desc   A description of the error, giving more information.
 @endsignaldef

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