Commit graph

122 commits

Author SHA1 Message Date
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
tomk
6a15c9b9c9 initial cleanup of xmpppy perfomed, see #3260 2008-06-09 00:32:02 +00:00
tomk
cb2d629535 added prototype of BOSHClient class and script for usage example, removed import of common.gajim from transports_nb 2008-05-31 16:51:40 +00:00
Brendan Taylor
b0aeefcbb5 flush xmpppy's send queue before disconnecting 2008-05-19 20:04:14 +00:00
Yann Leboulanger
a3827fe5d0 new XEP-0115 implementation (version 1.5) 2008-04-20 22:58:47 +00:00
Yann Leboulanger
3aefee4700 try all IPs of a given host in case first one fails. Fixes #2958 2008-04-16 11:02:01 +00:00
Yann Leboulanger
3c2a220c65 handle all PyopenSSL errors. fixes #3686 2008-01-23 19:04:35 +00:00
Stephan Erb
e25ac90068 Improving readability (little) by shifting some boolean checks to a lambda function. 2007-12-27 22:28:40 +00:00
Yann Leboulanger
14f1232308 get SSL error message where it is in Error instance 2007-12-15 12:10:25 +00:00
Yann Leboulanger
b7cc062d7d [shprotx] fix loading of multiple SSL certificates and better error message. fixes #3619 2007-12-15 08:31:42 +00:00
Yann Leboulanger
46aac301c8 SSL certificate verification, certificate fingerprint verification. fixes #720, #2499 2007-12-04 09:38:39 +00:00
Yann Leboulanger
465b2f20c3 "iSocket is already connected" error has a different number under OpenBSD. fixes #3396 2007-08-26 20:45:07 +00:00
Tomasz Melcer
401a9b4c02 Some comments added. 2007-06-07 22:49:47 +00:00
Yann Leboulanger
ecd995fda3 [omega] Don't check the fingerprint of the SSL certificats with a fixed list, but use OpenSSL to check if the certificat is valid. 2007-06-03 14:15:50 +00:00
Yann Leboulanger
efaa1a18e7 add a now argument to the send function, so that stanza is sent instantly instead of added to queue. Use it to send answer to adhoc command when we disconnect. fixes #3008 and #2808 2007-03-15 12:53:29 +00:00
junglecow
bbed22a410 - Workaround for #2846: Make the error silent. Fixes #2846.
- Workaround for #2838: Use synchronous (blocking) SSL handshake. Fixes #2838.
2007-03-03 20:13:43 +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
37ffd5585b Removed an old-style logging command, as _owner may not always exist. Partial attempt at #2928 2007-01-23 20:06:07 +00:00
junglecow
9814451e07 - [dcraven] Fixed spelling error. Fixes #2580.
- Demoted some error messages from error to debug level.
2007-01-01 02:11:15 +00:00
junglecow
5529852ded - Fix TB on fingerprint mismatch
- Add debug message on import failure of PyOpenSSL
 - Update gajim.org digest after migration to new server
2006-12-29 01:46:46 +00:00
junglecow
e1ad5b15d0 - Removed unnecessary import
- Fixed name of transport_nb's logger
2006-12-28 11:15:44 +00:00
junglecow
c16642c838 Catch socket.gaierror. Fixes #2840. 2006-12-27 22:45:23 +00:00
junglecow
e816b38a0f Check if self._sock exists before trying to close it. Fixes #2839. 2006-12-27 20:44:21 +00:00
junglecow
847d9fe6e9 - Enhanced parsing of -l/--loglevel option
- Demote one message w/exception to debug
 - Hopefully improved user error message when fingerprint is bad
2006-12-27 18:38:50 +00:00
junglecow
9deb76a8ad - Started new way of logging, with configurable level for each subsystem
- Added -q, --quiet (speaks for itself)
   - Added -l, --loglevel subsystem=LEVEL,subsystem2=LEVEL2,...
 - Quell winsock 10035 error. (Equivalent of EINPROGRESS, but winsock likes to have its own error numbers.)
 - Hide SSL certificate debug stuff unless gajim.c.x.transports loglevel is DEBUG or lower
 - Avoid unicode problems if we set a profile
 - Move fingerprint checks from _register_handlers to _connect_success
 - Some enhancements to fpr checking code
2006-12-23 21:18:07 +00:00
junglecow
44674f7e75 - Implement matching of fingerprints against servers.xml
- Add support for fingerprints to servers.xml parser.
 - Add support for 'hidden' servers to servers.xml parser.
 - Add some fingerprints to servers.xml, for testing and as example for the new format.
 - Force asynchronous (nonblocking) SSL handshake in all case
 - Add logging to c/connection.py

Known issues:
 - Checking of fingerprints doesn't work on in-band SSL (Typically port 5222) because of stuff happening out of sequence. Workaround: use immediate SSL mode ("Legacy SSL" option in server config). Because there is as of yet no other way to /force/ SSL, this is also the most secure setting.
 - A lot of code is still looking for a better place to live.
2006-12-22 23:30:23 +00:00
junglecow
35ecad1188 - Switch back to TLSv1 method
- Remove debug prints in stdlib ssl compatibility code
2006-12-21 18:08:17 +00:00
junglecow
62350adb36 - PyOpenSSL branch merged to trunk
Welcome to the world of PyOpenSSL! Please install PyOpenSSL, thanks!

svn merge -r 7426:HEAD svn://svn.gajim.org/gajim/branches/pyopenssl
2006-12-20 21:52:40 +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
8c78a14c3c - In [7647], reading of PID file was moved out of try..except block. Fixed.
- [PyOpenSSL] Small fix to error handling.
2006-12-15 10:57:25 +00:00
junglecow
c09e6e0b93 [PyOpenSSL]
- Improved data extraction from exceptions
 - Clearer error messages
 - Reduced exception spam
2006-12-13 20:15:22 +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
4a58bc4797 [pyopenssl] Yet more exception fixes 2006-12-01 22:23:45 +00:00
junglecow
236ed0463a [pyopenssl] More exception fixes 2006-11-28 22:12:03 +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
Yann Leboulanger
a37b946098 [sgala] IPV6 support for connection fith server. see #1969 2006-11-25 11:50:31 +00:00
junglecow
3c77ffd406 [PyOpenSSL branch]
- Close connection after creating account. Fixes #2676
- Handle normal connection close by server. Fixes #2671
- Do not disconnect if we haven't received starttag yet. Fixes #2668. Fixes unticketed bug causing account creation not to work with PyOpenSSL and asynchronous handshake (see also #2671). Behaviour of #2634 is also improved but now results in deadlock.
2006-11-18 15:09:40 +00:00
Yann Leboulanger
e9755daa9d retry indefinitly is back. fixes #2411. please test that 2006-11-15 08:24:35 +00:00