Mercurial > pidgin
view libgaim/plugins/perl/common/Connection.xs @ 15113:4a8c368df4ea
[gaim-migrate @ 17899]
Some touchups:
* If one of the parallel connection attempts fails immediately (i.e.
does not time out) then don't cancel the other one.
* Make sure we don't continue on to step 2 of the peer connection
process after we kick off the parallel gaim_proxy_connects(). It
looks like this would happen most of the time, because the
connect_timeout_timer would be added for the verified ip, so it
would NOT be added for the client ip, and so we wouldn't hit the
"return" call because it happens to be in the same block as the
second gaim_timeout_add() call.
* Add the connection timeout timer even if the gaim_proxy_connect() to
the verified ip returns NULL for some crazy reason.
I didn't actually test any of this. I should probably do that when
I get home.
committer: Tailor Script <tailor@pidgin.im>
| author | Mark Doliner <mark@kingant.net> |
|---|---|
| date | Wed, 06 Dec 2006 01:29:59 +0000 |
| parents | b1fcd2fc903a |
| children |
line wrap: on
line source
#include "module.h" MODULE = Gaim::Connection PACKAGE = Gaim::Connection PREFIX = gaim_connection_ PROTOTYPES: ENABLE Gaim::Account gaim_connection_get_account(gc) Gaim::Connection gc const char * gaim_connection_get_password(gc) Gaim::Connection gc const char * gaim_connection_get_display_name(gc) Gaim::Connection gc void gaim_connection_notice(gc, text) Gaim::Connection gc const char *text void gaim_connection_error(gc, reason) Gaim::Connection gc const char *reason void gaim_connection_destroy(gc) Gaim::Connection gc void gaim_connection_set_state(gc, state) Gaim::Connection gc Gaim::ConnectionState state void gaim_connection_set_account(gc, account) Gaim::Connection gc Gaim::Account account void gaim_connection_set_display_name(gc, name) Gaim::Connection gc const char *name Gaim::ConnectionState gaim_connection_get_state(gc) Gaim::Connection gc MODULE = Gaim::Connection PACKAGE = Gaim::Connections PREFIX = gaim_connections_ PROTOTYPES: ENABLE void gaim_connections_disconnect_all() void gaim_connections_get_all() PREINIT: GList *l; PPCODE: for (l = gaim_connections_get_all(); l != NULL; l = l->next) { XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::Connection"))); } void gaim_connections_get_connecting() PREINIT: GList *l; PPCODE: for (l = gaim_connections_get_connecting(); l != NULL; l = l->next) { XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::Connection"))); } void gaim_connections_set_ui_ops(ops) Gaim::Connection::UiOps ops Gaim::Connection::UiOps gaim_connections_get_ui_ops() void gaim_connections_init() void gaim_connections_uninit() Gaim::Handle gaim_connections_get_handle()
