Commit graph

44 commits

Author SHA1 Message Date
Yann Leboulanger
45f9366d58 do'nt try starttls if stream version < 1.0. Fixes #4600 2008-12-22 09:59:35 +00:00
Yann Leboulanger
08bb703640 fix GSSAPI authentication 2008-12-18 18:16:04 +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
e2118de64c [thorstenp] remove useless import 2008-12-02 14:44:26 +00:00
Yann Leboulanger
06ab4a7b6d revert thorstenp patches for now. They introduce bugs. 2008-10-20 21:38:06 +00:00
Yann Leboulanger
c2c681e05c [thorstenp] remove useless import 2008-10-20 17:54:02 +00:00
Yann Leboulanger
7055eec326 fix typo 2008-10-16 18:40:00 +00:00
Yann Leboulanger
44277d6c40 prevent traceback. Fixes #4319 2008-10-16 17:19:22 +00:00
Yann Leboulanger
196dd7e30a [thorstenp] use isinstance rather than type(x) == y. use sorted() 2008-10-11 09:59:52 +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
a7c36048b9 - renamed src/common/nslookup.py to resolver.py
- refactored resolver code and added asynchronous resolver based on patch by Damien Thebault[1]
  * Uses libasyncns-python[2]. If it's not available, old nslookup resolver is used)
  * works for SRV requests only at the moment

[1] https://www.lagaule.org/pipermail/gajim-devel/2008-July/000460.html
[2] https://code.launchpad.net/libasyncns-python
2008-08-31 23:40:06 +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
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
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
6a15c9b9c9 initial cleanup of xmpppy perfomed, see #3260 2008-06-09 00:32:02 +00:00
Yann Leboulanger
da3e8a7328 remove a connect_failure callback when we are connected. Fixes #3914 2008-05-05 08:50:07 +00:00
Jean-Marie Traissard
968b2acc4f http://python.org/dev/peps/pep-0008/ " Comparisons to singletons like None should always be done with
'is' or 'is not', never the equality operators."
Comparisons to None part; second one...
roster_win.py is NOT checked here (waiting for modelfilter)
2008-04-18 00:26:07 +00:00
Yann Leboulanger
cba44a43a1 handle proxy errors. fixes #799 (socks5 proxies should now be supported. tests needed) 2007-02-07 22:05:52 +00:00
Yann Leboulanger
9a6b090506 begining of socks5 proxy support. error handling is missing. see #799 2007-01-24 21:50:59 +00:00
junglecow
fddb000a89 [Trunk]
- In verbose mode, print encodings. (Especially for Windows users who don't have Python) (gajim.py)
 - Attempt at fixing traceback when getting user's home directory in Windows. See #2812. (c/configpaths.py)
 - Show 'error' icon next to account while waiting for reconnect. Fixes #2786. (c/connection_handlers.py, c/gajim.py, c/connection.py)
[PyOpenSSL]
 - Fix 100% CPU usage and hanging connection when server closes connection on us. (c/x/transports_nb.py)
 - Fix 'hanging' connection when server closes the connection on us before we can open the XML stream. (Disconnect handler didn't get called.) (c/x/client_nb.py)
 - Change prints to logger calls, various enhancements to debug printing, reduce spam (c/x/transports_nb.py)
 - this → self (c/x/transports_nb.py)
 - Call _do_receive() once to collect error message from socket, when error flag is raised in scheduler. (c/x/transports_nb.py)
2006-12-20 20:40:08 +00:00
junglecow
7c0696093a - Trying to connect to server every 20 seconds forever is extremely rude to its owner. Let's be polite and do exponential back-off. (See #2411)
- [PyOpenSSL] Ported [7443] to pyopenssl branch.
2006-12-08 21:19:01 +00:00
junglecow
5cb241b8c0 [trunk]
- Typo
[pyopenssl]
- Better exception handling
- Prevent 100% cpu usage when ssl handshake is slow
2006-11-28 01:02:31 +00:00
Dimitur Kirov
3b447544de don't force tls on ports 5223 and 443 2006-08-22 08:13:23 +00:00
Dimitur Kirov
873bedd221 escape from sslerror due to broken protocol 2006-07-26 12:49:11 +00:00
Dimitur Kirov
71314f2b08 don't try to reconnect if socket was never
connected
2006-04-08 00:30:33 +00:00
Dimitur Kirov
b3de43ae3f disconnect after stream end tag, unregister
two more handlers
2006-03-16 17:29:30 +00:00
Dimitur Kirov
7afb58426a property last_connection, used to prevend
double connections
2006-03-15 20:10:52 +00:00
Dimitur Kirov
c8b27da04f don't disconnect after server inabillity to
receive long data. Unregister all handlers in
disconnect
2006-03-15 19:39:27 +00:00
Dimitur Kirov
81873919c5 remove error debug statement,use stderr instead
isinstance, instead of __class__.__name__
2006-02-11 21:49:17 +00:00
Dimitur Kirov
d6fee1ea49 added missing argument to NBCommonClient call 2006-02-06 11:28:05 +00:00
Dimitur Kirov
c3ef6cfbbc I'm losing the logic of this condition, but
this is a copy of the original, so it should
work
2006-02-06 10:00:23 +00:00
Dimitur Kirov
f62db4acfe Switched to non-blocking connections.
Removed threads and mutexes in connection.py
and gajim.py.
Add resolver through nslookup command, removed
dnspython and pydns (for now).
2006-02-03 12:17:34 +00:00