annotate doc/connection-signals.dox @ 13914:3ae8a3935406

[gaim-migrate @ 16414] First stab at trying to fix the MSN http connect method. It still doesn't work, and I'm not sure why, but it gets a lot farther in the signon process now. For those unfamiliar with the issue, the MSN http connect method stopped working after all the non-blocking I/O changes. The http connect method is apparently used by lots of people behind silly firewalls and stuff, and therefore we really shouldn't release Gaim 2.0.0 without it working, because people will complain. The two main problems were 1. The outgoing message queue was removed in favor of buffering all data to one large buffer. This sounds good in theory... but apparently each message sent to and from the server has a "SessionID" in the HTTP header. Every message we send should use the same SessionID as the last packet we received from the server. So basically you can't put two messages into the outgoing buffer at the same time because you don't have the correct SessionID to use for the second message. You have to wait until you get the reply from the server. 2. There were some strange buffer problems with using the wrong variable when trying to combine the header+body into one buffer before sending the message. I also fixed a small memleak or two, added some comments, and tried to clean up the code a little. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Mon, 03 Jul 2006 20:39:04 +0000
parents aca39e77db85
children 8cf53d7a0887
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6724
aca39e77db85 [gaim-migrate @ 7251]
Christian Hammond <chipx86@chipx86.com>
parents: 6611
diff changeset
1 /** @page connection-signals Connection Signals
6611
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
3 @signals
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
4 @signal signing-on
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
5 @signal signed-on
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
6 @signal signing-off
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
7 @signal signed-off
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
8 @endsignals
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
9
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
10 <hr>
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 @signaldef signing-on
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 @signalproto
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 void (*signing_on)(GaimConnection *gc);
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 @endsignalproto
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 @signaldesc
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 Emitted when a connection is about to sign on.
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 @param gc The connection that is about to sign on.
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 @endsignaldef
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 @signaldef signed-on
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
22 @signalproto
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 void (*signed_on)(GaimConnection *gc);
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
24 @endsignalproto
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
25 @signaldesc
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
26 Emitted when a connection has signed on.
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
27 @param gc The connection that has signed on.
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
28 @endsignaldef
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
29
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
30 @signaldef signing-off
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
31 @signalproto
6724
aca39e77db85 [gaim-migrate @ 7251]
Christian Hammond <chipx86@chipx86.com>
parents: 6611
diff changeset
32 void (*signing_off)(GaimConnection *gc);
6611
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
33 @endsignalproto
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
34 @signaldesc
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
35 Emitted when a connection is about to sign off.
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
36 @param gc The connection that is about to sign off.
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
37 @endsignaldef
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
38
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
39 @signaldef signed-off
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
40 @signalproto
6724
aca39e77db85 [gaim-migrate @ 7251]
Christian Hammond <chipx86@chipx86.com>
parents: 6611
diff changeset
41 void (*signed_off)(GaimConnection *gc);
6611
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
42 @endsignalproto
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
43 @signaldesc
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
44 Emitted when a connection has signed off.
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
45 @param gc The connection that has signed off.
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
46 @endsignaldef
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
47
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
48 */
6e3bec3c843e [gaim-migrate @ 7135]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
49 // vim: syntax=c tw=75 et