Commit graph

110 commits

Author SHA1 Message Date
Jonathan Schleifer
086d031374 Remove spaces at EOL. 2009-06-15 21:00:14 +02:00
Yann Leboulanger
a7f0022bb4 Add a second timeout to differenciate keepalive and ping alive packets. We now wait 55s before sending a keepalive (whitespace packet) and 2 minutes before sendind a xmpp ping (and then we wait for 1min the answer before reconnecting) Fixes #4643 2009-05-01 09:18:21 +00:00
Yann Leboulanger
d37d1e973f remove latest \n in bosh received messages (one is added when we send) 2009-04-07 17:12:35 +00:00
Yann Leboulanger
a6f62ac7c6 ignore port in bosh URL, it's entered separetly. Take into account proxy username when using bosh 2009-04-06 14:05:07 +00:00
Yann Leboulanger
531ab92651 don't log as error, but as info, connection lost. Fixes #4800 2009-02-13 22:37:51 +00:00
Stephan Erb
8a19e11bee Add some FIXME statements due to open questions. Improve a two default parameters. 2009-01-11 13:42:39 +00:00
Stephan Erb
c8dc8cd758 Fix a potential traceback in onreceive() of NonBlockingTransport. A few more codingstandards 2009-01-10 16:44:11 +00:00
Stephan Erb
bc3445881f Rename client.py to plugin.py, as all client logic has already been moved to client_nb.py
Introduce a get_instance factory method for all plugins and other xmpp related classes. This will help us to decouple plugs in order to make them testable.
2009-01-09 00:49:58 +00:00
Stephan Erb
cca10e6d29 A few more coding standards and readability improvements in client_nb.py. 2009-01-08 16:30:27 +00:00
Stephan Erb
ed3de38ce5 Revert r10931. Fixes #4632. See #2634 2009-01-03 16:34:58 +00:00
Stephan Erb
8a76efb703 Proposed Fix. Make sure we read all data from our SSL socket wrappers and don't just rely on gobject.io_add_watch, select or poll.
This isn't really a clean solution, but the less intrusives fix that I can think of. Fixes #2634.
2008-12-31 14:01:53 +00:00
Stephan Erb
f83eb5ae95 Remove two more "from protocol import *". 2008-12-28 01:52:21 +00:00
Stephan Erb
233848aec0 Random bits in xmpp. Cosmetic only. 2008-12-27 11:45:58 +00:00
Stephan Erb
6999e1bbb6 Make three docstrings epydoc enabled. See http://epydoc.sourceforge.net/manual-docstring.html 2008-12-24 13:56:02 +00:00
Stephan Erb
5c02a907b4 Coding standards and documentation improvements in transports_nb.py 2008-12-24 11:10:38 +00:00
Yann Leboulanger
b317ffcdae merge BOSH branch to trunk 2008-12-15 21:06:08 +00:00
Yann Leboulanger
e389e0b16b [thorstenp] remove whitespace at eol 2008-12-03 21:56:12 +00:00
Yann Leboulanger
3392c54dd0 [thorstenp] fix empty exception clauses 2008-12-03 21:37:05 +00:00
Yann Leboulanger
c163e90b10 [thorstenp] fix unused variables 2008-12-02 15:53:23 +00:00
Yann Leboulanger
7701f29beb [thorstenp] fix undefined variables 2008-12-02 15:10:31 +00:00
Yann Leboulanger
e2118de64c [thorstenp] remove useless import 2008-12-02 14:44:26 +00:00
Yann Leboulanger
91cc491173 [Simo Sorce] fix GSSAPI to use FQDN. See #2465 2008-11-28 07:27:42 +00:00
Yann Leboulanger
4a06659912 try to connect to next type when connection is refused (server not listening on 5223) 2008-10-22 19:59:14 +00:00
Yann Leboulanger
7ca670a303 assign variable soon enough. 2008-10-22 18:13:43 +00:00
Yann Leboulanger
6fc5ffe276 fix non blocking connect. don't block when connect fails. Fixes #4366, #4107 2008-10-21 15:50:20 +00:00
Yann Leboulanger
06ab4a7b6d revert thorstenp patches for now. They introduce bugs. 2008-10-20 21:38:06 +00:00
Yann Leboulanger
f801a50260 [thorstenp] fix unused variables 2008-10-20 21:17:48 +00:00
Yann Leboulanger
dc5d7bcf7c [thorstenp] fix undefined variables 2008-10-20 18:05:33 +00:00
Yann Leboulanger
c2c681e05c [thorstenp] remove useless import 2008-10-20 17:54:02 +00:00
Yann Leboulanger
992e90208e [thorstenp] use != instead of <> 2008-10-11 10:02:49 +00:00
Yann Leboulanger
567f1e17c1 [thorstenp] di not use emtpy except clauses 2008-10-11 09:37:13 +00:00
Yann Leboulanger
9d7c80d522 [thorstenp] replace has_key by key in dict. Fixes #4392 2008-10-07 20:41:59 +00:00
tomk
acdf4ff143 improved disconnect handling, added comments, fixed minor bugs 2008-08-17 22:57:48 +00:00
tomk
a76c173816 - improved SSL connections with BOSH - SSL over HTTP proxy is possible now,
Gajim will do HTTP CONNECT on proxy to reach the BOSH Conn manager and try
  to estabilish TLS (same as what firefox do when approaching HTTPS server via
  proxy)
- moved proxy-connecting code to xmpp/proxy_connectors.py
- debugged SOCKS5 proxy code
- tested with Tigase server
2008-08-14 21:48:43 +00:00
tomk
4504861084 fixed handling of SSL errors 2008-08-09 12:16:42 +00:00
tomk
cbfa9d97df - TLS classes refactored - NonBlockingTLS is now plugged to NonBlockingTCP and
derived (was plugged to NonBlockingClient which made it unusable for BOSH)
- Fixed HTTP CONNECT proxy socket
- Implemented workaround for the bug with insecure-connection warning dialog
  (unfortunately, this is not over - I just forbid the transport to send
  BOSH empty bodies until auth module is plugged, which is wrong and will
  break if user will wait more than "inactivity" (usualy thirty) seconds
  before clicking the dialog.
  This workaround works with ejb and opf, and also breaks connection with
  both of them if delay is too long.
- Implemented basic TLS over BOSH. It works only with OPF and poorly.
2008-08-05 23:52:35 +00:00
Yann Leboulanger
673052f1b8 handle disconnection while insecure connetion dialog is opened. fixes #4138 2008-07-30 15:43:53 +00:00
js
8605cd3f38 For historical reasons, we have a tab width of 3. This is strange, but
we have that in all files. To at least lesser the confusion a bit, add
vim tags for that.
Additionally, fix wrong #! in a few files.
2008-07-29 19:49:31 +00:00
tomk
56e0ad7a96 basic proxy authentication for BOSH connections implemented 2008-07-28 18:53:00 +00:00
tomk
af3f1a9dd4 - implemented BOSH key sequencing, acknowledgements
- improved HTTP persistent connections
- added alarm-unregister method to idlequeue
- extended proxy managing dialog for BOSH proxy
2008-07-26 22:42:40 +00:00
tomk
a58618c843 persistent HTTP connections in BOSH roughly implemented, added hack for openfire incapability of after-SASL-stream-restart-response in BOSH, changed doubles quotes to single 2008-07-18 00:34:49 +00:00
tomk
3d860f40a6 BOSHClient transformed to NonBlockingBOSH transport - it's easier to maintain more connections from below, implemented handling of non-persistent HTTP connections - it runs with ejabberd, improved NonBlockingTransport interface, minor changes in BOSHDispatcher 2008-07-13 22:22:58 +00:00
tomk
e1899f34dc new BOSHDispatcher (in dispatcher_nb), improved BOSHClient class, minor changes in other xmpp modules 2008-07-07 23:04:10 +00:00
Yann Leboulanger
f379d06d2c fix connection for ipv6 2008-07-03 06:26:39 +00:00
tomk
952e4a1569 moved bosh code from client_nb.py to bosh.py, replaced debug logging with debug.py by logging in whole xmpppy (debug.py is now unused) 2008-07-02 23:29:10 +00:00
tomk
937bb01a69 moved TLS and SSL classes from transports_nb to new tls_nb module, fixed HTTP CONNECT proxy transport 2008-06-30 23:02:12 +00:00
tomk
f3820706fb - Refactored non-blocking transport and client classes - getaddrinfo is called
in Client now
- Added NonBlockingHttpBOSH transport (to tranports_nb) and BOSHClient
(to client_nb)
- Extended possible proxy types in configuration by "BOSH" proxy
- Rewrote NonBlockingTLS to invoke success callback only after successful TLS handshake is over (formerly, the TLS Plugin returned right after sending <starttls>)
2008-06-30 00:02:32 +00:00
tomk
65644ca13f added stub for new transports module plus basic test for it, testing code reorganized 2008-06-18 23:58:19 +00:00
Yann Leboulanger
1d745c1c9d use SSLv23 method (it support SSLv2, v3 and TLSv1) instead of only TLSv1 method as some server (gmail) don't support TLSv1 method. fixes #3786 2008-06-16 14:12:59 +00:00
tomk
16e274b9ec added test script for NonBlockingClient (test/test_client_nb.py) 2008-06-12 23:54:46 +00:00