aboutsummaryrefslogtreecommitdiffstats
path: root/protocols/jabber/io.c
Commit message (Collapse)AuthorAgeLines
* Merging head. Most changes are not so relevant because they're to IMWilmer van der Gaast2010-03-20-11/+1
|\ | | | | | | | | modules.
| * Oops.. Today's Jabber fix could get stuck in a somewhat infinite loop if aWilmer van der Gaast2010-03-15-11/+1
| | | | | | | | | | | | | | Jabber server returns an empty <iq type="result"/> response to the session establishment request (which is valid and actually done by the example, but my test Jabberd shows different behaviour). Fixed.
* | Merging in head.Wilmer van der Gaast2010-03-14-26/+12
|\|
| * Don't send bind and session requests at the same time when logging inWilmer van der Gaast2010-03-14-23/+7
| | | | | | | | | | because some very picky jabberd's don't like it. (Fixes Bug #569)
| * Don't send a <?xml> stream start after starttls since it upsets certainWilmer van der Gaast2010-03-14-3/+5
| | | | | | | | | | | | jabberd's including Zimbra's. Thanks to jMCg and balzar in #bitlbee for helping with figuring this out.
* | Make purple use BitlBee's event handling API. Since the APIs never reallyWilmer van der Gaast2009-10-11-2/+2
|/ | | | | | | | | | diverged too much this is fairly transparent. I did rename and redefine GAIM_INPUT_* variables to really make it work without adding another stupid layer in between. One problem left, the new libpurple input API doesn't care about return values. Fixing that in the next CL.
* Fixed stalling issue with OpenSSL and Jabber (#368).Wilmer van der Gaast2008-03-23-2/+7
|
* Moved xmltree handlers initialization to xt_new().Wilmer van der Gaast2008-02-16-2/+1
|
* Keeping track of valid Jabber connections so _connected() events will beWilmer van der Gaast2008-01-24-1/+9
| | | | | | ignored if the connection's dead already. Necessary if using GLib for event handling for now. :-/
* Fixed sockerr_again() usage in Jabber module to (hopefully) fix a 100% CPUWilmer van der Gaast2007-12-12-2/+2
| | | | | usage bug.
* Merging from devel/Jelmer.Wilmer van der Gaast2007-11-14-9/+0
|\
| * Removed some debugging stuff that shouldn't have been here for a long timeWilmer van der Gaast2007-11-14-9/+0
| | | | | | | | | | already.
* | Added jabber_error_parse() and using it for both stream- and stanzaWilmer van der Gaast2007-07-30-23/+8
| | | | | | | | | | (only presence so far) errors.
* | Added a real XML-console to the Jabber module! Add the handle "xmlconsole"Wilmer van der Gaast2007-06-04-0/+29
|/ | | | | | | (without any @server part) to your contact list and you'll see all XMPP traffic going in and out, and messages sent to the buddy will be sent as packets to the server.
* s/imc/imcb/ for callback functions. Moved things aroundin nogaim.h aWilmer van der Gaast2007-04-15-15/+15
| | | | | | little bit, grouping things by category instead of original Gaim 0.58 filename.
* Cleaned up struct im_connection. No more username/password stuff sinceWilmer van der Gaast2007-04-15-13/+14
| | | | | it's in acc too. wants_to_die is now an argument to imc_logout().
* Now that all these functions take format strings, I have to make sure IWilmer van der Gaast2007-04-05-3/+1
| | | | | use that and don't introduce vulnerabilities. :-)
* More cleanups, mainly in the callbacks. Replaced things likeWilmer van der Gaast2007-04-05-27/+27
| | | | | | | | do_error_dialog() and (set|hide)_login_progress(_error)?() with things that hopefully make more sense. Although it's still not really great...
* s/gaim_connection/im_connection/ and some other minor API changes. The restWilmer van der Gaast2007-03-30-77/+77
| | | | | | will come tomorrow. It compiles, I'll leave the real testing up to someone else. ;-)
* Fixed me. ;-) This seems to be correct already.Wilmer van der Gaast2006-11-23-1/+1
|
* Added #defines for XML namespaces.Wilmer van der Gaast2006-10-31-5/+5
|
* Proper detections of errors from *_connect() and added a "Connecting"Wilmer van der Gaast2006-10-21-4/+0
| | | | | message in jabber_login().
* Special message when the XMPP session is ended because of a concurrentWilmer van der Gaast2006-10-12-3/+9
| | | | | | login, and now sending proper error responses to IQ packets we can't handle.
* Fixed issues in end-of-connection detection and added basic "handling" ofWilmer van der Gaast2006-10-11-1/+50
| | | | | | stream errors. (They can't really be handled, but at least the user can be informed.)
* Moved handling of all IQ packets to event handlers. Cleaned up a LOT ofWilmer van der Gaast2006-10-08-4/+4
| | | | | mess in iq.c!
* Implemented a better node cache using a GLib hash, and preparing to addWilmer van der Gaast2006-10-08-2/+2
| | | | | | | event handlers that can be set when sending a packet to handle the reply to this specific packet. This should allow me to make the iq handler a lot cleaner.
* Never mind about those privacy lists, they're horrible and not supportedWilmer van der Gaast2006-10-07-1/+1
| | | | | | | by any client I know of. Also, they're already working on a (probably completely incompatible) standard: JEP-191. Maybe BitlBee will implement it too some day...
* Added max. recursion depth arguments to xt_handle()/_cleanup() to make sureWilmer van der Gaast2006-10-06-2/+2
| | | | | | commands that still have to be handled don't get (partially) cleaned up already.
* Lack of TLS support is also detected now if the server doesn't supportWilmer van der Gaast2006-10-04-16/+45
| | | | | | XMPP 1.0 (properly), and restored immediate writes by splitting up the jabber_write_callback() function.
* Added a useful error message for SASL negotiation failures and turned offWilmer van der Gaast2006-10-02-1/+7
| | | | | the little hack in jabber_write() for now because it breaks error handling.
* No more double free()/crashes when trying to set up an SSL connection toWilmer van der Gaast2006-10-02-0/+5
| | | | | | | a non-SSL server, and better handling of TLS connection setup by initializing the TLS session from a callback function (which guarantees a valid return value from ssl_starttls() before any error callback could be called).
* Better fix for servers that report to comply with XMPP 1.0 but don't offerWilmer van der Gaast2006-10-01-8/+7
| | | | | | SASL authentication options. Previous fix tried to do IQ authentication even after successful SASL authentications.
* Can now log in to the jabber.com server (which pretends to support XMPP 1.0Wilmer van der Gaast2006-10-01-0/+12
| | | | | but does NOT (seem to) support SASL authentication).
* Some initial hooks/stuff for privacy lists, and fixed a crash bug onWilmer van der Gaast2006-10-01-1/+1
| | | | | connecting to Google Talk.
* Better handling of user tls setting.Wilmer van der Gaast2006-09-24-6/+24
|
* Added support for SSL- and TLS-connections. Checking of the "tls" userWilmer van der Gaast2006-09-24-9/+98
| | | | | | setting has to be finished, plus an ssl_starttls() function for the other SSL libraries (this code will only compile with GnuTLS for now).
* Better detection of successful IQ authentication (using packet caching),Wilmer van der Gaast2006-09-22-3/+30
| | | | | properly working SASL authentication (although only PLAIN so far).
* Fixed return value on incomplete write()s in write handler, protectionWilmer van der Gaast2006-09-22-9/+58
| | | | | | | against write()ing to sockets that are closed already, hopefully sane detection for SASL support, and only sending type=unavailable presence tag to logged in sessions.
* Basic SASL (PLAIN only ATM) authentication code. Doesn't log in completelyWilmer van der Gaast2006-09-22-3/+12
| | | | | yet.
* Now also sending <presence type="unavailable"/> tag on disconnect, asWilmer van der Gaast2006-09-21-6/+14
| | | | | recommended by rfc3921/5.1.5.
* Added simple parsing of incoming <presence> tags, a nice </stream:stream>Wilmer van der Gaast2006-09-21-3/+14
| | | | | | at the end of sessions, support for sending messages, and restored the old (and leaking) xt_print(), which I'll only use for debugging.
* It can send a valid (pre-XMPP) login packet. Lots of work to do, still...Wilmer van der Gaast2006-09-20-0/+237