pidgin: 06b53ea8: oscar: Fix 'Allow multiple simultaenous ...
darkrain42 at pidgin.im
darkrain42 at pidgin.im
Wed Nov 4 00:10:55 EST 2009
-----------------------------------------------------------------
Revision: 06b53ea832679e0dfb2e6d5d0c1b69e61f1bd38b
Ancestor: 8fabd9a1bc4e9b709c6854c06ec1526cc8fcb6f9
Author: darkrain42 at pidgin.im
Date: 2009-11-04T05:09:04
Branch: im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/06b53ea832679e0dfb2e6d5d0c1b69e61f1bd38b
Modified files:
ChangeLog libpurple/protocols/oscar/flap_connection.c
libpurple/protocols/oscar/oscar.c
libpurple/protocols/oscar/oscar.h
ChangeLog:
oscar: Fix 'Allow multiple simultaenous logins' with clientLogin.
-------------- next part --------------
============================================================
--- ChangeLog 2e23f99e9c3381fbee07b9b12e4504a6bcf7d7f4
+++ ChangeLog ba34bb06211a5799a43cb14dbbff213624b8e25e
@@ -14,6 +14,8 @@ version 2.6.4 (??/??/20??):
AIM and ICQ:
* Better rate limit calculations and other improvements. (Aman Gupta)
* More detailed error messages when messages fail to send. (Aman Gupta)
+ * The simultaneous login account option is respected when using
+ the clientLogin authentication method.
MSN:
* Don't forget display names for buddies.
============================================================
--- libpurple/protocols/oscar/flap_connection.c 697f15a4cb37bfad606470d2deb95875ffb98488
+++ libpurple/protocols/oscar/flap_connection.c 80e6cd2d0f781321a2371d6e7d32d8db5ce43404
@@ -73,7 +73,7 @@ void
}
void
-flap_connection_send_version_with_cookie_and_clientinfo(OscarData *od, FlapConnection *conn, guint16 length, const guint8 *chipsahoy, ClientInfo *ci)
+flap_connection_send_version_with_cookie_and_clientinfo(OscarData *od, FlapConnection *conn, guint16 length, const guint8 *chipsahoy, ClientInfo *ci, gboolean allow_multiple_logins)
{
FlapFrame *frame;
GSList *tlvlist = NULL;
@@ -94,7 +94,7 @@ flap_connection_send_version_with_cookie
aim_tlvlist_add_16(&tlvlist, 0x0018, (guint16)ci->minor);
aim_tlvlist_add_16(&tlvlist, 0x0019, (guint16)ci->point);
aim_tlvlist_add_16(&tlvlist, 0x001a, (guint16)ci->build);
- aim_tlvlist_add_8(&tlvlist, 0x004a, 0x01);
+ aim_tlvlist_add_8(&tlvlist, 0x004a, (allow_multiple_logins ? 0x01 : 0x03));
aim_tlvlist_write(&frame->data, &tlvlist);
============================================================
--- libpurple/protocols/oscar/oscar.c 309aed81ec9a1f50cc93a88061bd2d715a56e924
+++ libpurple/protocols/oscar/oscar.c 74e9ab37a96ec209cbe34457b99295a02cd5fd78
@@ -1188,7 +1188,8 @@ connection_common_established_cb(FlapCon
ClientInfo icqinfo = CLIENTINFO_PURPLE_ICQ;
flap_connection_send_version_with_cookie_and_clientinfo(od,
conn, conn->cookielen, conn->cookie,
- od->icq ? &icqinfo : &aiminfo);
+ od->icq ? &icqinfo : &aiminfo,
+ purple_account_get_bool(account, "allow_multiple_logins", OSCAR_DEFAULT_ALLOW_MULTIPLE_LOGINS));
} else {
flap_connection_send_version_with_cookie(od, conn,
conn->cookielen, conn->cookie);
============================================================
--- libpurple/protocols/oscar/oscar.h 2a0281f7f7f03445e21af8d4f6e66c05edfffe42
+++ libpurple/protocols/oscar/oscar.h 2b4285381bda76591a103336f703d7dce40b43ec
@@ -661,7 +661,7 @@ void flap_connection_send_version_with_c
void flap_connection_send(FlapConnection *conn, FlapFrame *frame);
void flap_connection_send_version(OscarData *od, FlapConnection *conn);
void flap_connection_send_version_with_cookie(OscarData *od, FlapConnection *conn, guint16 length, const guint8 *chipsahoy);
-void flap_connection_send_version_with_cookie_and_clientinfo(OscarData *od, FlapConnection *conn, guint16 length, const guint8 *chipsahoy, ClientInfo *ci);
+void flap_connection_send_version_with_cookie_and_clientinfo(OscarData *od, FlapConnection *conn, guint16 length, const guint8 *chipsahoy, ClientInfo *ci, gboolean allow_multiple_login);
void flap_connection_send_snac(OscarData *od, FlapConnection *conn, guint16 family, const guint16 subtype, guint16 flags, aim_snacid_t snacid, ByteStream *data);
void flap_connection_send_snac_with_priority(OscarData *od, FlapConnection *conn, guint16 family, const guint16 subtype, guint16 flags, aim_snacid_t snacid, ByteStream *data, gboolean high_priority);
void flap_connection_send_keepalive(OscarData *od, FlapConnection *conn);
More information about the Commits
mailing list